TESTPLAN: Wat is, hoe te maken (met voorbeeld)

Testplan

Een testplan is een gedetailleerd document dat de teststrategie, doelstellingen, planning, schatting, opleveringen en middelen beschrijft die nodig zijn om testen uit te voeren voor een softwareproduct. Testplan helpt ons te bepalen welke inspanning nodig is om de kwaliteit van de geteste applicatie te valideren. Het testplan dient als blauwdruk om softwaretestactiviteiten uit te voeren als een gedefinieerd proces, dat minutieus wordt bewaakt en gecontroleerd door de testmanager.

Volgens de ISTQB-definitie: "Testplan is een document dat de reikwijdte, aanpak, middelen en planning van beoogde testactiviteiten beschrijft."

Laten we beginnen met het volgende voorbeeld / scenario van het testplan: in een vergadering wilt u het testplan bespreken met de teamleden, maar ze zijn niet geïnteresseerd -.

Wat gaat u in dat geval doen? Selecteer uw antwoord zoals in de volgende afbeelding

A) Ik ben Manager en doe alles zoals ik al zei
B) Oké, laat me uitleggen waarom we een testplan nodig hebben dat niet
klopt.
Als testmanager moet u hen het belang van testplan uitleggen in plaats van het team te dwingen te doen wat u wilt.
Juist
Als testmanager moet u hen het belang van testplan uitleggen in plaats van het team te dwingen te doen wat u wilt.

Wat is het belang van een testplan?

Het maken van een testplan-document heeft meerdere voordelen

  • Help mensen buiten het testteam, zoals ontwikkelaars, bedrijfsmanagers en klanten , de details van testen te begrijpen .
  • Testplan begeleidt ons denken. Het is als een boek met regels dat moet worden gevolgd.
  • Belangrijke aspecten zoals testschatting, testscope en teststrategie worden gedocumenteerd in het testplan, zodat het kan worden beoordeeld door het managementteam en kan worden hergebruikt voor andere projecten.

Hoe een testplan te schrijven

U weet al dat het maken van een testplan de belangrijkste taak is van het testmanagementproces. Volg de zeven onderstaande stappen om een ​​testplan te maken volgens IEEE 829

  1. Analyseer het product
  2. Ontwerp de teststrategie
  3. Definieer de testdoelstellingen
  4. Bepaal testcriteria
  5. Planning van middelen
  6. Plan testomgeving
  7. Planning en schatting
  8. Bepaal testresultaten

Stap 1) Analyseer het product

Hoe kun je een product testen zonder enige informatie erover? Het antwoord is onmogelijk. U moet een product grondig leren kennen voordat u het test.

Het te testen product is de bankwebsite Guru99. U moet klanten en eindgebruikers onderzoeken om hun behoeften en verwachtingen van de applicatie te kennen

  • Wie gaat de website gebruiken?
  • Waar wordt het voor gebruikt?
  • Hoe werkt het?
  • Welke software / hardware gebruikt het product?

U kunt de volgende benadering gebruiken om de site te analyseren

Laten we bovenstaande kennis nu toepassen op een echt product: Analyseer de bankwebsite http://demo.guru99.com/V4.

Kijk eens rond op deze website en bekijk ook de productdocumentatie. Het doornemen van de productdocumentatie helpt u alle functies van de website te begrijpen en te gebruiken. Als u onduidelijk bent over een item, kunt u een klant, ontwikkelaar of ontwerper interviewen voor meer informatie.

Stap 2) Ontwikkel een teststrategie

Teststrategie is een cruciale stap bij het maken van een testplan bij softwaretests. Een teststrategiedocument is een document op hoog niveau, dat meestal wordt ontwikkeld door Test Manager. Dit document definieert:

  • De testdoelstellingen van het project en de middelen om deze te bereiken
  • Bepaalt testinspanning en -kosten

Terug naar uw project, u moet een teststrategie ontwikkelen om die bankwebsite te testen. U dient de onderstaande stappen te volgen

Stap 2.1) Bepaal de reikwijdte van de tests

Voordat met een testactiviteit wordt begonnen, moet de reikwijdte van de tests bekend zijn. U moet er goed over nadenken.

  • De componenten van het te testen systeem (hardware, software, middleware, etc.) worden gedefinieerd als " in scope "
  • De componenten van het systeem die niet worden getest, moeten ook duidelijk worden gedefinieerd als " buiten de scope ".

Het definiëren van de scope van uw testproject is erg belangrijk voor alle belanghebbenden. Een precieze scope helpt je daarbij

  • Geef iedereen vertrouwen en nauwkeurige informatie over de tests die u aan het doen bent
  • Alle projectleden hebben een duidelijk beeld van wat er wordt getest en wat niet

Hoe bepaal je de scope van je project?

Om de reikwijdte te bepalen, moet u -

  • Nauwkeurige klantbehoefte
  • Project budget
  • Productspecificatie
  • Vaardigheden en talent van uw testteam

Nu moet duidelijk de "in scope" en "out of scope" van de test worden gedefinieerd.

  • Zoals de specificaties van de softwarevereisten, richt het project Guru99 Bank zich alleen op het testen van alle functies en externe interface van website Guru99 Bank ( in scope testing)
  • Niet-functionele tests zoals stress , prestatie of logische database worden momenteel niet getest. ​

Probleemscenario

De klant wil dat je zijn API test. Maar het projectbudget laat dit niet toe. Wat gaat u in zo'n geval doen?

Welnu, in dat geval moet u de klant ervan overtuigen dat Api Testing extra werk is en aanzienlijke middelen zal verbruiken. Geef hem gegevens die uw feiten ondersteunen. Vertel hem dat als Api-testen binnen de scope is inbegrepen, het budget met XYZ-bedrag zal toenemen.

De klant gaat akkoord en dienovereenkomstig vallen de nieuwe scopes, out of scope items

  • In-scope items: Functioneel testen, Api-testen
  • Items die buiten het bereik vallen: databasetests, hardware en andere externe interfaces

Stap 2.2) Identificeer het testtype

Een testtype is een standaard testprocedure die een verwacht testresultaat geeft.

Elk testtype is geformuleerd om een ​​specifiek type productbugs te identificeren. Maar alle testtypen zijn gericht op het bereiken van één gemeenschappelijk doel: " Vroege detectie van alle defecten voordat het product aan de klant wordt vrijgegeven"

De meest gebruikte testtypes worden beschreven in de volgende afbeelding

Veelgebruikte testtypen

Er zijn talloze testtypen voor het testen van softwareproducten. Uw team kan niet genoeg inspanningen leveren om alle soorten tests uit te voeren. Als testmanager moet u de prioriteit van de testtypen instellen

  • Op welke testtypen moet de focus liggen voor het testen van webapplicaties?
  • Welke testtypen moeten worden genegeerd om kosten te besparen?
Laten we nu oefenen met uw project. Het product dat u wilt testen, is een bankwebsite.
Op welke testtypen moet u zich in dit geval concentreren?
Selecteer alles wat van toepassing is
A) Testen van eenheden B) API-testen C) Integratietesten D) Systeemtesten E) Testen installeren / verwijderen F) Agile testen We selecteren alleen B) API-testen C) Integratietesten D) Systeemtesten voor Guru99-project




Stap 2.3) Documenteer risico's en problemen

Risico is de onzekere gebeurtenis van de toekomst met een waarschijnlijkheid van voorkomen en een kans op verlies. Wanneer het risico zich daadwerkelijk voordoet, wordt het het ' probleem'.

In het artikel Risicoanalyse en oplossing heb je al in detail geleerd over de 'Risico'-analyse en de mogelijke risico's in het project geïdentificeerd.

In het QA Test Plan leg je die risico's vast

Risico Beperking
Het teamlid mist de vereiste vaardigheden voor het testen van websites. Plan een training om uw leden te bekwamen
De projectplanning is te krap; het is moeilijk om dit project op tijd af te ronden Stel Testprioriteit in voor elk van de testactiviteiten.
Test Manager heeft een slechte managementvaardigheid Plan leiderschapstraining voor manager
Een gebrek aan samenwerking heeft een negatieve invloed op de productiviteit van uw medewerkers Moedig elk teamlid aan bij zijn taak en inspireer hen tot grotere inspanningen.
Verkeerde budgetraming en kostenoverschrijdingen Bepaal de scope voordat u aan het werk gaat, besteed veel aandacht aan de projectplanning en volg en meet constant de voortgang

Stap 2.4) Maak testlogistiek

In Test Logistics moet de Test Manager de volgende vragen beantwoorden:

  • Wie gaat testen?
  • Wanneer vindt de test plaats?

Wie gaat testen?

U kent misschien niet de exacte namen van de tester die zal testen, maar het type tester kan worden gedefinieerd.

Om het juiste lid voor een bepaalde taak te selecteren, moet u overwegen of zijn vaardigheid geschikt is voor de taak of niet, en ook het projectbudget schatten. Als u het verkeerde lid voor de taak selecteert, kan het project mislukken of vertragen .

Een persoon met de volgende vaardigheden is het meest ideaal voor het uitvoeren van softwaretests:

  • Vermogen om het standpunt van de klant te begrijpen
  • Sterk verlangen naar kwaliteit
  • Aandacht voor detail
  • Goede samenwerking

In uw project is het lid dat de leiding neemt over de testuitvoering de tester. Op basis van het projectbudget kunt u een in- of uitbesteed lid kiezen als tester.

Wanneer vindt de test plaats?

Testactiviteiten moeten worden afgestemd op de bijbehorende ontwikkelactiviteiten.

U begint met testen wanneer u alle vereiste items heeft die in de volgende afbeelding worden weergegeven

Stap 3) Bepaal het testdoel

Testdoelstelling is het algemene doel en het behalen van de testuitvoering. Het doel van het testen is het vinden van zoveel mogelijk softwarefouten; zorg ervoor dat de software die wordt getest geen fouten bevat voordat deze wordt vrijgegeven.

Om de testdoelen te definiëren, moet u de volgende 2 stappen uitvoeren

  1. Maak een lijst van alle softwarefuncties (functionaliteit, prestaties, GUI…) die mogelijk moeten worden getest.
  2. Definieer het doel of het doel van de test op basis van bovenstaande kenmerken

Laten we deze stappen toepassen om het testdoel van uw Guru99 Bank-testproject te vinden

U kunt de ' TOP-DOWN'- methode kiezen om de functies van de website te vinden die mogelijk moeten worden getest. Bij deze methode splitst u de te testen applicatie op in component en subcomponent .

In het vorige onderwerp heb je de specificaties van de vereisten al geanalyseerd en door de website gelopen, zodat je een mindmap kunt maken om de websitefuncties als volgt te vinden

Deze afbeelding toont alle functies die de Guru99-website mogelijk heeft.

Op basis van bovenstaande functies kunt u het testdoel van het project Guru99 als volgt definiëren

  • Controleer of de functionaliteit van de website Guru99 (account, storting ...) werkt zoals verwacht zonder fouten of bugs in de echte zakelijke omgeving
  • Controleer of de externe interface van de website, zoals de gebruikersinterface, werkt zoals verwacht en voldoet aan de behoeften van de klant
  • Controleer de bruikbaarheid van de website. Zijn die functionaliteiten handig voor de gebruiker of niet?

Stap 4) Bepaal testcriteria

Testcriteria is een standaard of regel waarop een testprocedure of testoordeel kan worden gebaseerd. Er zijn 2 soorten testcriteria:

Opschortingscriteria

Specificeer de kritieke ophangingscriteria voor een test. Als tijdens het testen aan de ophangingscriteria wordt voldaan, wordt de actieve testcyclus opgeschort totdat de criteria zijn opgelost .

Voorbeeld van een testplan: als uw teamleden melden dat 40% van de testgevallen is mislukt, moet u het testen opschorten totdat het ontwikkelingsteam alle mislukte gevallen heeft opgelost.

Criteria afsluiten

Het specificeert de criteria die een succesvolle voltooiing van een testfase aangeven . De exitcriteria zijn de beoogde resultaten van de test en zijn nodig om door te gaan naar de volgende ontwikkelingsfase. Voorbeeld: 95% van alle kritische testgevallen moet slagen.

Sommige methoden voor het definiëren van exitcriteria zijn het specificeren van een beoogde run-rate en slagingspercentage .

  • Run rate is de verhouding tussen het aantal uitgevoerde testgevallen / het totale aantal testgevallen van de testspecificatie. De testspecificatie heeft bijvoorbeeld in totaal 120 TC's, maar de tester heeft slechts 100 TC's uitgevoerd, dus de run rate is 100/120 = 0,83 (83%)
  • Slagingspercentage is de verhouding tussen het aantal geslaagde testcases / uitgevoerde testcases . Bijvoorbeeld, in meer dan 100 uitgevoerde TC's zijn er 80 TC's die zijn geslaagd, dus het slagingspercentage is 80/100 = 0,8 (80%)

Deze gegevens kunnen worden opgehaald in Test Metric-documenten.

  • Run rate is verplicht om 100% te zijn, tenzij een duidelijke reden wordt gegeven.
  • Het slagingspercentage is afhankelijk van de projectomvang, maar het behalen van een hoog slagingspercentage is een doel.

Voorbeeld van een testplan: uw team heeft de testuitvoeringen al gedaan. Ze rapporteren het testresultaat aan u en ze willen dat u de exitcriteria bevestigt .

In het bovenstaande geval is de Run-rate verplicht 100%, maar het testteam voltooide slechts 90% van de testcases. Dit betekent dat er niet aan de run-rate is voldaan, dus bevestig de exitcriteria NIET

Stap 5) Planning van middelen

Resourceplan is een gedetailleerde samenvatting van alle soorten resources die nodig zijn om de projecttaak te voltooien. Hulpbronnen kunnen mensen, apparatuur en materialen zijn die nodig zijn om een ​​project te voltooien

De resourceplanning is een belangrijke factor bij de testplanning omdat het helpt bij het bepalen van het aantal resources (werknemer, apparatuur…) dat voor het project moet worden gebruikt. Daarom kan de Test Manager de juiste planning en schatting voor het project maken.

Deze sectie bevat de aanbevolen bronnen voor uw project.

Personeelszaken

De volgende tabel geeft verschillende leden van uw projectteam weer

Nee.

Lid

Taken

1.

Test Manager

Beheer het hele project

Definieer project richtingen

Schaf geschikte bronnen aan

2.

Tester

Identificeren en beschrijven van geschikte testtechnieken / tools / automatiseringsarchitectuur

Verifieer en beoordeel de testaanpak

Uitvoeren van de testen, Log resultaten, Rapport de gebreken.

Tester kan ingekochte of uitbestede leden zijn, op basis van het projectbudget

Voor de taak waarvoor weinig vaardigheid vereist is , raad ik u aan uitbestede leden te kiezen om projectkosten te besparen .

3.

Ontwikkelaar in test

Implementeer de testcases, testprogramma, testsuite etc.

4.

Testbeheerder

Bouwt op en zorgt ervoor dat de testomgeving en activa worden beheerd en onderhouden

Ondersteuning van tester om de testomgeving te gebruiken voor het uitvoeren van tests

5.

SQA-leden

Zorg voor kwaliteitsborging

Controleer of het testproces voldoet aan de gespecificeerde vereisten

Systeembronnen

Voor het testen, een webtoepassing, moet u de bronnen plannen volgens de volgende tabellen:

Nee.

Middelen

Beschrijvingen

1.

Server

Installeer de te testen webapplicatie

Dit omvat een aparte webserver, databaseserver en toepassingsserver, indien van toepassing

2.

Test tool

De testtool is om het testen te automatiseren, de gebruikershandeling te simuleren, de testresultaten te genereren

Er zijn talloze testtools die u voor dit project kunt gebruiken, zoals Selenium, QTP ... enz.

3.

Netwerk

U hebt een netwerk nodig inclusief LAN en internet om de echte bedrijfs- en gebruikersomgeving te simuleren

4.

Computer

De pc die gebruikers vaak gebruiken om verbinding te maken met de webserver

Stap 6) Plan de testomgeving

Wat is de testomgeving

Een testomgeving is een set-up van software en hardware waarop het testteam testcases gaat uitvoeren. De testomgeving bestaat uit een echte bedrijfs- en gebruikersomgeving , maar ook uit fysieke omgevingen, zoals server, front-end-omgeving.

Hoe de testomgeving in te stellen

Terug naar je project, hoe stel je een testomgeving in voor deze bankwebsite?

Om deze taak af te ronden, heb je een sterke samenwerking nodig tussen Testteam en Ontwikkelteam

U moet de ontwikkelaar enkele vragen stellen om de te testen webtoepassing duidelijk te begrijpen . Hier zijn enkele aanbevolen vragen. Natuurlijk kunt u de andere vragen stellen als u dat nodig heeft.

  • Wat is de maximale gebruikersverbinding die deze website tegelijkertijd aankan?
  • Wat zijn hardware- / softwarevereisten om deze website te installeren?
  • Heeft de computer van de gebruiker een bepaalde instelling nodig om door de website te bladeren?

De volgende afbeelding beschrijft de testomgeving van de bankwebsite www.demo.guru99.com/V4

Stap 7) Planning en schatting

In het artikel Testschatting heb je al enkele technieken gebruikt om de inspanning te schatten om het project te voltooien. Nu moet u die schatting en het schema opnemen in de testplanning

Stel dat u in de testschattingsfase het hele project opsplitst in kleine taken en de schatting voor elke taak toevoegt, zoals hieronder

Taak

Leden

Schat de inspanning

Maak de testspecificatie

Test Designer

170 manuur

Voer een testuitvoering uit

Tester, testbeheerder

80 manuur

Test rapport

Tester

10 manuur

Testlevering

20 manuur

Totaal

280 manuur

Vervolgens maakt u het schema om deze taken uit te voeren.

Planning maken is een veel voorkomende term in projectmanagement. Door een solide planning te maken in de testplanning, kan de testmanager deze gebruiken als tool om de voortgang van het project te bewaken, de kostenoverschrijdingen te beheersen.

Om de projectplanning te maken, heeft de testmanager verschillende soorten invoer nodig, zoals hieronder:

  • Medewerker en projectdeadline : De werkdagen, de projectdeadline en de beschikbaarheid van middelen zijn de factoren die van invloed zijn op de planning
  • Projectschatting : op basis van de schatting weet de testmanager hoe lang het duurt om het project te voltooien. Zodat hij de juiste projectplanning kan maken
  • Projectrisico : Door het risico te begrijpen, kan Test Manager voldoende extra tijd aan de projectplanning toevoegen om met de risico's om te gaan

Laten we oefenen met een voorbeeld:

Stel dat de baas het project Guru99 in een maand wil afronden , dan heb je de inspanning voor elke taak al ingeschat in Test Estimation. U kunt het schema maken zoals hieronder

Stap 8) Resultaten testen

Testresultaten is een lijst met alle documenten, tools en andere componenten die ontwikkeld en onderhouden moeten worden ter ondersteuning van de testinspanning.

Er zijn verschillende testresultaten in elke fase van de levenscyclus van softwareontwikkeling.

Testresultaten worden geleverd vóór de testfase.

  • Testplannen document.
  • Testcases documenten
  • Test ontwerpspecificaties.

Testresultaten worden tijdens het testen geleverd

  • Testscripts
  • Simulatoren.
  • Testgegevens
  • Test de traceerbaarheidsmatrix
  • Foutlogboeken en uitvoeringslogboeken.

Testresultaten worden geleverd nadat de testcycli voorbij zijn.

  • Testresultaten / rapporten
  • Defectrapport
  • Richtlijnen voor installatie / testprocedures
  • Release-opmerkingen

Middelen

Download een voorbeeldtestplan-sjabloon

Download het voorbeeldsysteemtestplan van website Guru99 Bank

Interessante artikelen...