Gids voor Agile Software Testen

Methodologie, tools & processen voor betere software

Inleiding

De Agile methode biedt teams de gelegenheid om regelmatige feedback en korte, herhalende ontwikkelingscycli te doen. Daarmee kunnen ze hun aanpak continu optimaliseren, zodat ze de klant maximaal van dienst kunnen zijn. Naarmate de verschillende onderdelen afgerond worden, kunnen ontwikkelaars snel feedback verzamelen die de DevOps en integratietesten verbeterd.

Het kan echter een hele uitdaging zijn om het juiste evenwicht te vinden tussen noodzakelijke software testen en de efficiëntie van agile. Naarmate een product zijn eindstadium nadert en meer specifieke testen moeten worden uitgevoerd, zoals security-, performance- en bruikbaarheidstesten of integrale gebruikersacceptatietesten (UAT), kan dit evenwicht bijzonder lastig te vinden zijn.

Je team kan bij dergelijke situaties echter terugvallen op de principes, tips en best practices die in dit e-book worden vermeld. Nadat je deze gids aandachtig gelezen hebt, zul je een beter begrip hebben:

  • Waarom regelmatig testen van cruciaal belang is in je Agile sprints.
  • Welke best practices en tools je kunt gebruiken om een consistent, efficiënt en grondig testproces te garanderen.
  • Hoe TestMonitor ontworpen is om Agile softwaretesten te bevorderen, hoe groot of hoe complex het project of de ontwikkeling ook is.

Download een PDF versie van deze gids door het invullen van het onderstaande formulier. Gewoon lezen kan ook, scroll dan door naar beneden.

Agile Software Testing Guide

Hoofdstuk 1

Waarom je testen moet integreren in Agile

Hoewel het “Agile Manifesto” de rol van formeel testen niet expliciet vermeldt, wordt de waarde en het doel ervan wel gesuggereerd:

"Het is onze hoogste prioriteit om de klant tevreden te stellen door vroegtijdig en continu waardevolle software beschikbaar te stellen".

De essentie van agile is met andere woorden de waarde van permanente feedback. Die zorgt ervoor dat een eindproduct perfect aansluit op de behoeften van de klant. Omdat in elke sprint een herhalend en stapsgewijs ontwikkelings- en testproces is ingebouwd, kunnen teams een product ontwikkelen dat steeds aan de eisen voldoet, ook al worden er geleidelijk meer eisen toegevoegd.

De agile-methode helpt niet alleen software-ontwikkelaars om hun doelen te behalen, maar biedt ook een aantal andere cruciale voordelen bij het testen. Dit zijn enkele van deze voordelen:

  • Je vermindert de kans op dure aanpassingen in een later stadium van de ontwikkeling
  • Je helpt teams om unit- en functiegerichte testen uit te voeren met algemene ontwerpen.
  • Je verhoogt het aantal en de type defecten die via andere testmethoden, zoals gebruikersacceptatietesten (UAT), kunnen worden opgespoord.
  • Je stimuleert de samenwerking tussen het team van ontwikkelaars en de  gebruikers (testers).
  • Je helpt teams om de grenzen van hun softwareontwerp te verleggen door hen de nodige feedback te geven om innovatie te stimuleren.

Hoofdstuk 2

Tips om softwaretesten eenvoudiger en efficiënter te maken in Agile

Ervaren Agile ontwikkelaars en test- of kwaliteitsmanagers (QA) weten dat de omvang van softwaretesten zich in de loop van een project steeds verder uitbreidt, doorgaans van unit-testen naar integratie tot algemene gebruikersacceptatietesten (UAT).

Tegelijkertijd neemt het aantal testers en de betrokkenheid van klanten toe, waardoor het moeilijker wordt om testgevallen op te stellen en testruns te beheren. Deze complexiteit wordt nog versterkt wanneer teams zowel handmatige als automatische softwaretesten uitvoeren. Deze tweeledige aanpak neemt meer tijd in beslag, maar resulteert wel in intensievere tests en is ideaal bij een grote geografische spreiding.

Daarom is het van cruciaal belang dat je over de juiste onderdelen en best practices beschikt. Om de impact en de efficiëntie van je Agile testproces te maximaliseren, moet je:

 

De juiste mensen inzetten.

Naast test- of kwaliteitsmanagers (QA) een groep potentiële eindgebruikertesters aanwijzen die elke groep stakeholders van je project vertegenwoordigen om tijdens de volledige ontwikkelfase te helpen bij de productevaluatie, in het bijzonder bij UAT. Deze eindgebruikers kunnen ook betrokken zijn bij de ontwikkelingssprints en evalueren de software naarmate zijn voltooiing nadert.

De juiste Agile ontwikkelingstools gebruiken.

Met moderne platforms voor testbeheer kun je eenvoudig testen personaliseren, resultaten registreren en met testers communiceren. Toonaangevende platformen bieden een eenvoudige manier om defecten en issues op te sporen tot ze opgelost zijn, en bieden je bedrijf een consistente structuur om de testen te managen en te analyseren.

Een consistent Agile testproces gebruiken bij het ontwerpen van testgevallen.

Het opstellen en ontwerpen van een goed testgeval houdt meer in dan alleen maar een ja-of-nee vraag voorleggen aan een tester. Volg de best practices voor het opstellen van testgevallen door het volgende op te nemen:

  • De gegevensinvoer die nodig is om het systeem te valideren.
  • De stappen die de tester moet nemen om bepaalde functies of werkstromen te evalueren.
  • Eventuele gegevensvoorwaarden en de verwachte uitkomst.
  • Een logische naamgeving waarmee het testgeval duidelijk te herleiden is.

Speciale testomgevingen voorzien.

Testomgevingen zijn een gecontroleerde omgeving waar testers hun testgevallen kunnen uitvoeren. Daarom moet je zo goed mogelijk een productieomgeving proberen na te bootsen.

Probeer hardware- en netwerkconfiguraties op te nemen die vergelijkbaar zijn met wat een potentiële eindgebruiker zal ervaren. Veel bedrijven kiezen ervoor om testomgevingen te creëren in de vorm van virtuele snapshots van de ontwikkelomgeving om zo het administratieve beheer van het testproces eenvoudiger te maken.

Agile gerichte testmethoden gebruiken.

Hoewel de Agile methode relatief jong is in vergelijking met de traditionele watervalmethode, hebben teams verschillende testmethoden ontwikkeld waarmee ze de manier van testen geoptimaliseerd hebben.

Afhankelijk van de behoeften kunnen een of meer van deze methoden gebruikt worden:

  • Test-Driven Development (TDD): Hiermee wordt ervoor gezorgd dat de software tegemoet komt aan de behoeften van de klant door de testgevallen op te stellen voordat er tot ontwikkeling wordt overgegaan. De ontwikkeling wordt vervolgens unit voor unit uitgevoerd om aan de testgevallen te kunnen voldoen.
  • Acceptance Test-Driven Development (ATDD): Dit is een gezamenlijk proces waarin gebruikers, productontwikkelaars en de productmanager bedrijfsgerichte testnormen opstellen die afgestemd zijn op de eisen van de eindgebruiker.
  • Behavior-Driven Development (BDD): Met deze methode wordt de productfunctionaliteit vastgelegd door specificaties of voorbeelden op te stellen voor specifieke softwaregedragingen, scenario's of resultaten die de code moet opleveren.
  • Exploratief testen: Deze methode biedt testers de mogelijkheid om zonder testgevallen door de software te navigeren en zo het ontwerp en de functionaliteit van het product te onderzoeken, verkennen en evalueren.

 

 

Hoofdstuk 3

TestMonitor is er klaar voor!

Elk softwareproject is uniek in zijn omvang, functionaliteit, doel en timing, maar de kracht van een intuïtief testmanagement programma als TestMonitor kan veel voordelen bieden.

Scrum Masters zullen de eenvoud en structuur van TestMonitor waarderen, terwijl teams profiteren van een reeks extra functies en hulpmiddelen specifiek gericht op hun testbehoeften.

Enkele van de meest populaire functies die TestMonitor biedt zijn:

  • Intuïtieve interface waarmee testers zich beter kunnen concentreren op hun werk en tegelijk hun resultaten kunnen vastleggen, waardoor het eenvoudiger wordt om te testen en de testfrequentie te verhogen.
  • Een veilig en gebruiksvriendelijk ontwerp waarmee zowel nieuwe als ervaren testers TestMonitor optimaal kunnen benutten.
  • De mogelijkheid om testgevallen aan te maken en op te slaan in een bibliotheek. Daardoor wordt de administratieve last lager en kunnen teams zich beter aan de best practices houden.
  • De mogelijkheid om ingebouwde rapporten te genereren en te delen. Zo kun je de status en resultaten delen met de stakeholders.
  • Een cloud-based platform met de nodige flexibiliteit om overal en op elk moment testers te bereiken, ongeacht welk besturingssysteem, apparaat of browser ze gebruiken.
  • Ingebouwde integraties met andere ontwikkelingstools bevorderen de productiviteit van het team en verminderen de extra handelingen.

Hoofdstuk 4

Til Agile testen naar een hoger niveau

Hoewel het beperkt kan zijn, begint het testen in de Agile methode al in de allereerste sprint en duurt het de hele tijd voort.

Van exploratief testen tot UAT, security- en performancetesten, Agile testen vertrouwt op ontwikkelaars, test- en kwaliteitsmanagers (QA) en eindgebruikers om ervoor te zorgen dat er tegemoet gekomen wordt aan de eisen en wensen van de business.

Als je echter niet de juiste tools gebruikt of de nodige voorbereidingen treft, kan dit gevarieerde en frequente testproces al snel te ingewikkeld en omslachtig worden, waardoor de kenmerkende efficiëntie van Agile beperkt wordt.

Vandaar dat steeds meer ontwikkelteams, test- en kwaliteitsmanagers (QA) zich tot platforms als TestMonitor wenden. Het platform is zodanig ontworpen dat teams meer tijd kunnen besteden aan testactiviteiten en minder aan de vervelende administratieve taken die hen belemmeren. Het maakt niet uit wat de omvang van je softwareproject is of waar je team werkzaam is, TestMonitor biedt het juiste evenwicht tussen de nodige eenvoud en structuur voor Agile softwaretesten.

TestMonitor is gebouwd op de laatste web-technologie, omvat duidelijke ontwerp principes die resulteren in een intuïtieve, robuuste en complete testmanagement tool. 

Ben je klaar om de reis te maken? Klik dan hier om van start te gaan met een gratis proefversie van TestMonitor voor 14 dagen!

close chapters modal

Download een PDF-versie van deze gids om te bewaren voor later of te delen met een collega. 

Vul het formulier in en krijg direct toegang tot uw eigen exemplaar.

Agile Software Testing Guide