Blog #1: automatische testscenario’s voor Drupalprojecten

Drupal
Paragraphs

Voor Drupalprojecten bestaat er nu de mogelijkheid om automatische testen te schrijven. Hiervoor doet HB-plus een beroep op Behat.

Behat is een open source framework voor het uitvoeren van scenario's.

Een stukje historiek

Vroeger moesten ontwikkelaars bij elke wijziging - groot of klein - manueel nakijken of de wijziging behoorlijk werkte door (eigenlijk) de hele site te testen d.m.v. steekproeven.

Omdat het te duur en te tijdrovend zou zijn om echt alles na te kijken bij elke wijziging, testen we door middel van steekproeven. Deze methode biedt echter geen 100% garantie. Bovendien is de ontwikkelaar die de recente wijziging uitvoert niet noodzakelijk diegene die de andere functionaliteiten heeft geschreven, wat de kans op menselijke fouten vergroot.

Tijd voor automatisatie

Door Behat te gebruiken in het automatisch deployment process (Drupal Lambda) besparen we veel tijd. Waar een manuele test vroeger een uur duurde, neemt het automatisch testen slechts een minuut tijd in beslag.

dr

Behat is een open source framework waarmee een scenario kan uitgevoerd worden. Om de scenario’s in verstaanbare taal te schrijven, maakt Behat gebruik van Gherkin.

Voorbeelden van scenario's die door HB-plus getest worden zijn:

  • Kan een gebruiker zich nog aanmelden op de applicatie?
  • Kan een gebruiker een bestelling plaatsen op een bestelapplicatie?
  • Werkt de integratie met online betalingsprovider Ingenico nog?

Voor elke nieuwe ontwikkeling schrijven we standaardtesten voor de belangrijkste functionaliteiten. Alle testen draaien automatisch tijdens een deployment naar de development server. Als deze falen gaat er een alarmbelletje af in de communicatietool zodat de ontwikkelaars snel op de hoogte zijn.

Voor sommige applicaties draaien de testen zelfs elke nacht, los van het feit of er een codewijzing was (bijvoorbeeld integratie met een derde partij).

dr
Overtuiging

Binnen het Drupalteam zijn we ervan overtuigd dat een test schrijven geen extraatje is, maar een essentieel onderdeel van de ontwikkeling van een applicatie.

En dat een tikje meer tijd spenderen tijdens ontwikkeling, om te vermijden dat er later veel tijd gespendeerd wordt aan bugfixing, absoluut de moeite loont. Het is een win-win situatie voor zowel de ontwikkelaars als de klant!

Meer informatie

Voor meer informatie kan je terecht bij Kevin Thiels, Drupal team lead & Agile Coach.

Kevin Thiels
Kevin Thiels
Drupal team lead & Agile Coach

Gerelateerde artikels

Drupaltoepassingen goedkoper en frequenter updaten met Lambda

Sinds kort kan je gebruik maken van Lambda voor Drupaltoepassingen die beheerd worden door HB-plus. Nieuwe versies van de toepassingen frequenter en goedkoper in productie brengen? Installeren van veiligheidspatches en maandelijkse updates van Drupal- bibliotheken zonder bijkomende kosten? Automatische testen bij elke wijziging van de toepassing en updates op de ontwikkeling-, test- en integratie- en productieomgeving? Dat is nu allemaal mogelijk met Drupal-Lambda!