De meeste van ons zullen nooit een huis gaan bouwen. Maar we kunnen ons allemaal wel voorstellen dat, mocht het ooit zo ver komen, een goede bouwtekening wel erg handig zou zijn. Voor software testen geldt hetzelfde. Met een goed software test plan verloopt het testen sneller en efficiënter. Wat een test plan precies is en hoe je er eentje opstelt, dat lees je in dit artikel.
Wat is een test plan?
Een test plan is een document met de scope, aanpak en planning van het testen van software. Het document bevat vaak de volgende informatie:
- Het doel van het testen
- Een gedetailleerde omschrijving van hoe het testen gedaan zal worden (de aanpak)
- De software, onderdelen of functies die getest moeten worden
- Een gedetailleerde planning voor alle fasen van het testen
Identificeer het publiek
Voor je begint met het opstellen van het test plan, is het belangrijk om na te denken over wie het plan te zien gaan krijgen. Denk na over wat deze personen in het plan terug willen kunnen vinden, en verwerk dit in het plan.
Ongeacht het publiek moet je er in ieder geval voor zorgen dat het test plan:
- Beknopt is (testplannen zijn over het algemeen maar 1 tot enkele pagina’s lang)
- Georganiseerd is;
- Leesbaar is;
- Flexibel is (mocht er iets wijzigen, dan wil je dat kunnen verwerken in het plan);
- Accuraat is (zorg ervoor dat de informatie in het document klopt).
Schrijven van het plan
Het schrijven van een test plan gebeurt in een aantal verschillende stappen:
Allereerst wordt de scope van het testen vastgesteld. Soms hoeft niet elk aspect van de software getest te worden. De scope geeft aan welke functies en componenten van de software wel getest moeten worden.
Vervolgens worden er test cases gemaakt. Een test case beschrijft wat er getest wordt, hoe het getest wordt, wie er zal testen en wat de verwachte resultaten zijn. Het volledig testen van een software systeem vereist het afvinken van veel test cases.
Na de test cases wordt er een teststrategie gemaakt. De strategie is eigenlijk een soort draaiboek waarin voor elk lid van het testteam beschreven staat wat hij of zij moet doen.
Nu de test cases en teststrategie bepaald zijn, kan er besloten worden welke software testing tools style=”font-weight: 400;”> ingezet gaan worden. Dit kunnen software oplossingen zijn die het testen makkelijker en efficiënter maken, maar ook bijvoorbeeld de machines waarop de testers de testen gaan uitvoeren. Dit onderdeel van het test plan omvat dus alle tools die komen kijken bij het testen.
Na het vaststellen van de benodigde tools, is het zaak om testcriteria op te stellen. Deze moeten onderdeel zijn van de test cases, maar het kan geen kwaad om ze apart verder uit te werken. We spreken van twee soorten criteria:
- Opschortingscriteria: als aan deze criteria voldaan wordt, dan wordt er gestopt met testen. Een voorbeeld is een bepaald aantal ontdekte bugs. Als dit aantal bereikt wordt, dan wordt er (voorlopig) gestopt met testen.
- Exitcriteria: als aan deze criteria voldaan wordt, dan kan het testen afgerond worden. Een voorbeeld van een exitcriteria is dat alle bugs opgelost zijn.
Als laatste kan er nagedacht worden over geautomatiseerd testen. Als de software die getest moet worden erg complex is, of als er sprake is van heel veel test cases, dan kan geautomatiseerd testen een uitkomst bieden. De exacte toepassing ervan kan beschreven worden in het test plan.
Het belang van een test plan
Net zoals het verstandig is om een huis te bouwen met een goede bouwtekening, is het testen van software een stuk makkelijker met een goed test plan. Het maken van een test plan heeft namelijk meerdere voordelen:
- Het helpt mensen buiten het testteam (ontwikkelaars, managers en klanten) de tests beter te begrijpen;
- Het werk van de testers wordt makkelijker, omdat er een duidelijke instructie klaarligt;
- De efficiëntie van het testen wordt verhoogd, omdat er over bepaalde problemen al vóór het testen begon is nagedacht.