Wanneer de ontwikkeling van software en de ontwikkeltesten zijn afgerond, vindt er in de regel een systeemtest plaats.
Waarom is een systeemtest belangrijk?
In de algemene voorwaarden van softwareleveranciers staat vaak, dat de betaling (van een deel) van de ontwikkelkosten afhankelijk wordt gesteld van een succesvolle afronding van de acceptatietest.
In dit kader is het dus van belang dat de leverancier een goed werkende applicatie oplevert. Het uitvoeren van een gedegen systeemtest is daarvoor een belangrijke randvoorwaarde.
Met een systeemtest kan de leverancier aantonen dat er gebouwd is conform de specificaties. Van belang hierbij is dat de leverancier middels een rapportage kan aantonen wat de testresultaten zijn. Daarnaast dient hij inzicht te geven in de opgestelde en uitgevoerde testgevallen. Dit laatste geeft de opdrachtgever inzicht in de kwaliteit van de uitgevoerde testen. Hiermee kan de opdrachtgever, op basis van de opgeleverde rapportage, zich een beeld vormen van de opgeleverde kwaliteit van de software en al dan niet besluiten om te starten met een acceptatietest.
Wanneer starten met systeemtesten?
Er moet voldaan zijn aan de volgende voorwaarden om te kunnen starten met een systeemtest:
- De technische en functionele documentatie is afgerond.
- De ontwikkeling van de software is volledig afgerond.
- De ontwikkelaars hebben een unittest en unitintegratietest uitgevoerd.
- De ontwikkeltesten hebben aangetoond dat de componenten correct functioneren.
Waar richt de systeemtest zich op?
De focus van de systeemtest ligt op:
- Werkt het systeem volgense de technische specificaties?
- Werkt het systeem conform de functionele requirements?
- Voldoet het systeem aan de niet functionele requirements zoals bijvoorbeeld: performance, beveiliging, onderhoudbaarheid, etc.
Systeemtesten binnen Scrum
Er van uitgaande dat aan het einde van een sprint een werkend systeem (gereed voor in productie) moet worden opgeleverd, dient er dus ook een systeemtest te worden uitgevoerd. De systeemtest activiteiten dienen dan ook een onderdeel te zijn van de Definition of Done.