De software testlevenscyclus (STLC) is een reeks acties die samenhangend en op een systematische en geplande basis worden uitgevoerd om te achterhalen of een softwareproduct correct functioneert en of er mogelijkheden zijn om het te verbeteren. Alle fasen van de software testcyclus hebben een exact doel en vereisen de aanwezigheid van een specialist met een solide technische achtergrond.
Laten we kijken wat STLC vertegenwoordigt en hoeveel componenten het bevat. Over het algemeen zijn er 8 fasen van de testprocedure, die 3 taken omvatten: voorbereiding op de uitvoering, de uitvoering zelf, afsluiting. Het afsluitingsgedeelte is van cruciaal belang, aangezien software testconcepten voorzien dat elke uitgevoerde test helpt bij het oplossen van toekomstige bugs.
Ingangs- en uitgangscriteria voor testen
Elke fase van STLC (behalve de Requirements phase, omdat dit een nulfase is) vereist ingangs- en uitgangscriteria. De ingangscriteria vertegenwoordigen een reeks voorwaarden die moeten worden voldaan voordat het testproces kan worden gestart.
Uitgangscriteria voor testen is een reeks algemene en specifieke voorwaarden die moeten worden voldaan voordat het testen kan worden afgerond. In principe zijn deze testcriteria de objectieven en doelen die moeten worden bereikt tijdens het uitvoeren van de test.
STLC-fasen
Als een complex proces, dat talloze stappen omvat, is STLC opgedeeld in verschillende fasen. Deze aanpak helpt bij het optimaliseren van tijdsbesteding en het maximaliseren van betrouwbaarheid. De fasen verlopen dus als volgt:
Requirements phase
De allereerste stap in de gehele QA-levenscyclus, waarbij een testteam definieert hoe het eindproduct zich precies moet gedragen in overeenstemming met de vereisten van belanghebbenden. Het verzamelen van deze informatie helpt het workflowproces vanaf het begin van het project te optimaliseren. Binnen deze fase definieert het team de soorten tests die moeten worden uitgevoerd en de omgeving waarin deze naar verwachting zullen plaatsvinden.
Planning phase
De tweede stap binnen STLC is de planningsfase, die de definitie van testvereisten, de inschatting van risico’s die zich kunnen voordoen bij de juiste procedures, de keuze van de teststrategie, planning en definitie van sequenties, en de creatie van een testplan omvat. Hier worden ook de doelstellingen en de omvang van het project bepaald om de totale inspanning en kosten voor het project te berekenen.
Entry criteria: Requirement documents;
Exit criteria: Test Strategy, Test Plan, Test Effort Estimation Document.
Analysis phase
Deze stap wordt uitgevoerd voor een exacte definitie van welke procedures in alle verdere software testfasen moeten worden uitgevoerd. Om een uitgebreide lijst te maken en rekening te houden met alle noodzakelijke voorwaarden die moeten worden geboden, moet het team zich verdiepen in alle aspecten van het project en alle details nauwkeurig overwegen. Dit proces is erg belangrijk, omdat het directe invloed heeft op het succes van de uitvoering van de volgende fasen.
Entry criteria: Requirement documents;
Exit criteria: Test Strategy, Test Plan.
Design phase
Een andere veelvoorkomende naam voor dit stadium is de Test Case Development phase. Zoals u zich kunt voorstellen, vormt het team op dit punt alle benodigde testgevallen. Een eenvoudig voorbeeld, testen op het inloggen van een gebruiker in een systeem met geldige/ongeldige gegevens. Afhankelijk van de vereisten van belanghebbenden, worden de juiste gevallen gemaakt. Tests kunnen worden ontworpen voor black-box testing, evenals voor white-box. Het is belangrijk om een voldoende lijst met gevallen te maken die alle benodigde velden dekt. Indien van toepassing worden ook scripts voor geautomatiseerde tests in deze fase geschreven.
Entry criteria: Requirement documents, Test Plan;
Exit criteria: Test Cases, Test Scripts (if automated), Test Data.
Implementation phase
Dit is de laatste stap vóór het uitvoeringsstadium. Het is noodzakelijk om ervoor te zorgen dat aan alle benodigde voorwaarden is voldaan. De testmanager moet controleren of de omgeving correct is ingesteld en geconfigureerd volgens de richtlijnen die voor dit project zijn geschreven. In feite controleert de manager in dit stadium of alles klaar is voor uitvoering. Hij wijst ook toe wie verantwoordelijk is voor elk deel van de tests en schat de benodigde tijd voor de hele procedure in.
Entry criteria: Test Plan; Smoke Test Cases, Test Data;
Exit criteria: Test Environment, Smoke test results.
Execution phase
Volgens het Test Plan en de testgevallen die in de vorige stappen zijn ontwikkeld, worden de juiste tests uitgevoerd. Wanneer er een bug wordt gedetecteerd, markeert de specialist deze met een juiste status (gefaald, geblokkeerd, niet uitgevoerd etc.) en wijst er een ID aan toe. Na het corrigeren van alle bugs, voert het team de tests opnieuw uit om te zien of alles goed is, aangezien het oplossen van een bug op één plek kan leiden tot het ontstaan van een bug op een andere plek. Wanneer de build klaar is, is het tijd voor de Conclusion phase.
Entry criteria: Test Plan, Test Cases, Test Data, Test Environment;
Exit criteria: Test Case Execution Report, Defect Report.
Conclusion phase
Zoals de naam al aangeeft, worden in deze voorlaatste fase van STLC alle uitgevoerde tests en hun resultaten gedocumenteerd, en worden ook de mislukte gevallen en hun defecten geregistreerd. Geaggregeerde informatie wordt wekelijks of maandelijks naar de teamleider gestuurd, waarna deze het analyseert of beoordeelt en voorbereidt voor het afsluitingsrapport.
Entry criteria: Test Case Execution Report, Defect Report;
Exit criteria: Prepared Closure Report.
Closure phase
Wanneer alles is gedaan, organiseert het team een bijeenkomst, waar ze de belangrijkste momenten benadrukken, nieuwe mogelijke manieren bespreken om soortgelijke storingen in de toekomst te voorkomen, en statistieken voor het project opstellen (bijv. totale bestede tijd, kosten, kwaliteit, testdekking, etc.). Alle nuttige informatie wordt vastgelegd en gedocumenteerd, zodat indien een vergelijkbare bug zich in de toekomst voordoet, de tester deze snel kan oplossen.
Entry criteria: Prepared Closure Report;
Exit criteria: Test Closure Report, Test Metrics.