Gestructureerd testen: wat is het en hoe gebruik je het?
Gestructureerd testen is een manier om je softwaretesten beter en efficiënter uit te voeren. Door gestructureerd te testen volg je een bepaalde structuur, waardoor je de kans op fouten verkleint en je tijd bespaart. TMap is één van de meest gebruikte methodes voor gestructureerde testen. In deze blog lees je alles over gestructureerd testen en hoe het kan worden toegepast binnen de softwaretestwereld.
Wat is gestructureerd testen?
De naam zegt het eigenlijk al. Gestructureerd testen houdt in dat je een specifieke structuur of kader volgt voor je testproces. Dit kan inhouden dat je een testplan maakt, de stappen en doelstellingen van je testen bepaalt, en ze op een systematische manier organiseert.
Wanneer moet je het gebruiken?
Gestructureerd testen is het meest nuttig voor grotere, complexere softwareprojecten. Het helpt om alles georganiseerd en op schema te houden, waardoor de kans op het missen van belangrijke tests of stappen afneemt. Maar ook bij kleine projecten is gestructureerd testen geen overbodige luxe. Je wilt natuurlijk altijd dat het testen effectief en efficiënt verloopt.
Wat zijn de voordelen?
Gestructureerd testen heeft een aantal voordelen:
- Het bespaart tijd;
- Het vermindert fouten;
- Het zorgt voor een betere organisatie;
- Het zorgt voor betere communicatie binnen teams;
- Het zorgt dat software aan alle noodzakelijke eisen voldoet voordat het wordt vrijgegeven.
Hoe gebruik je het?
Een gestructureerde testaanpak is dus noodzakelijk om jouw testen effectief en efficiënt uit te voeren. Binnen TMap wordt de testaanpak in vier aandachtgebieden onderscheiden:
- Fasering: de testactiviteiten worden in fases ingedeeld die samenhangen met de ontwikkelingscyclus van de (software-)applicatie;
- Organisatie: een logische en goede organisatorische integratie zodat iedereen binnen het testteam weet wat te doen en dat testfuncties die zijn gedefinieerd;
- Testtools en infrastructuur: de keuze voor de juiste hulpmiddelen (tools) en infrastructuur;
- Testtechnieken: de bruikbare testtechnieken voor de uitvoering van de testen worden gekozen.
Fasering
Een testproces bestaat altijd uit een aantal verschillende activiteiten. Om die in kaart te brengen, bestaan er faseringsmodellen. In dit testfaseringsmodel verdeel je dan het hele proces in een vijf fases:
- Planning en beheer
- Voorbereiding
- Specificatie
- Uitvoering
- Afronding
Die fases verdeel je vervolgens weer onder in activiteiten. Van iedere activiteit beschrijf je dan het doel, de invoer, het proces, de uitvoer, de hulpmiddelen enzovoort. Je faseringsmodel vormt de rode draad voor het testproces.
Dit model geldt voor iedere testtechniek. De activiteiten kunnen natuurlijk wel per fase en per testsoort afwijken. Het is daarom van belang dat je goed definieert wie en wanneer, welke test uitvoert. Testen raakt namelijk meerdere disciplines en afdelingen en daarom moeten de verschillende taken, verantwoordelijkheden, mijlpalen en producten nauwkeurig worden beschreven.
Organisatie
Binnen de gestructureerde testaanpak is organisatie op twee vlakken erg belangrijk. Enerzijds is organisatie binnen het testteam nodig. Het moet voor bijvoorbeeld iedereen duidelijk zijn wat zijn taken en verantwoordelijkheden zijn. Anderzijds moet er aandacht zijn voor het implementeren van gestructureerd testen binnen de organisatie. Testfuncties moeten zijn gedefinieerd en er moet voor iedere test zijn beschreven wie de test uitvoert, wie verantwoordelijk is en wie het proces controleert en monitort.
Testtools en infrastructuur
Een ander onderdeel van gestructureerd testen, zijn de testtools en de infrastructuur. Wat bedoelen we hier precies mee? De infrastructuur bestaat uit:
- Testomgeving;
Om tests te kunnen uitvoeren is een stabiele, beheersbare en representatieve testomgeving nodig. Deze omgeving moet bovendien losstaan van bijvoorbeeld de ontwikkelomgeving zoals het OTAP model. Alleen dan kun je reproduceerbare tests uitvoeren.
- Testtools;
Software testen wil je natuurlijk efficiënt uitvoeren. Om dit te doen, zijn testtools van groot belang. Per activiteit in het faseringsmodel kun je verschillende testtools gebruiken.
- Werkomgeving.
Tot slot is het natuurlijk van belang dat de werkomgeving van iedereen die betrokken is bij het testproces goed geregeld is en gereed is. Zorg bijvoorbeeld dat iedereen de juiste rechten heeft binnen het testproces om de juiste handelingen te verrichten.
Testtechnieken
Testtechnieken, ook wel, testontwerptechnieken omvatten alle soorten testen die er zijn. Deze testen zijn in het leven geroepen om fouten in software, systemen en applicaties te vinden. De verschillende technieken gebruik je dus om grondig onderzoek uit te voeren en eventuele fouten te achterhalen. Er zijn een hoop van deze testtechnieken met ieder hun eigen eigenschappen en doel:
- Semantische Test (SEM)
- Syntactische Test (SYN)
- Beslistabeltest (BTT)
- Datacombinatietest (DCT)
- Elementaire vergelijkingstest (EVT)
- Gegevenscyclustest (GCT)
- Use Case Test (UCT)
- Real Life Test (RLT)
- Procescyclustest (PCT)
Gestructureerd testen is een waardevol hulpmiddel
Over het geheel genomen is gestructureerd testen een waardevol hulpmiddel voor het testen van software. Door een specifieke structuur en een plan te volgen kun je je software efficiënt testen en de kans op fouten verkleinen. Probeer het eens in je volgende softwaretestproject en zie hoe het je proces verbetert! Wil je hier meer over leren? Volg een testopleiding bij Testlearning!
Meer weten over Testlearning?
Lijkt het je leuk om op de hoogte te blijven van ontwikkelingen rondom onze testopleidingen? Volg ons dan op LinkedIn, schrijf je in voor de maandelijkse nieuwsbrief of lees onze blogs!