Planning For Ad Hoc Testing

In dit artikel hebben we Ad hoc testen, de soorten, de voordelen, de nadelen, en de beste praktijken om Ad hoc testen uit te voeren.

What Is Ad Hoc Testing?

Ad hoc testen, soms aangeduid als ‘random testing’ of ‘monkey testing’, wordt gedefinieerd als een informeel type testen. Het doel van dit proces is om het systeem te kraken met behulp van onconventionele methoden. Dit type testen van software is over het algemeen ongepland en volgt geen specifieke testontwerptechnieken om testgevallen te creëren.

Het belangrijkste doel van ad hoc testen is om eventuele gebreken te vinden door middel van willekeurige controle. De tester improviseert de stappen door ze willekeurig uit te voeren. Dit kan zeer specifieke en interessante defecten aan het licht brengen, die bij andere methoden gemakkelijk worden gemist.

Het meest verrassende aspect van ad hoc testen is dat er geen testontwerptechnieken in zijn opgenomen. Dit betekent dat deze methode weliswaar gebreken vindt die normaal gesproken niet worden gevonden, maar moeilijker te reproduceren zijn, omdat er geen geschreven testgevallen of documentatie zijn.

Het succes van ad hoc testen komt echt neer op de creativiteit en doorzettingsvermogen van de tester en is soms gewoon te danken aan puur geluk. De ad hoc testtechniek valt direct onder de categorie ‘ongestructureerd testen’.

Structured Vs. Unstructured Testing

Structured Testing

Deze aanpak zorgt ervoor dat elke activiteit die tijdens de testprocedure plaatsvindt, gescript is, van het maken van testgevallen tot de sequentiële uitvoering. De tester zal het script volgen om de tests succesvol uit te voeren.

Unstructured Testing

Bij deze aanpak wordt getest door middel van het raden naar fouten. De tester zal testgevallen creëren tijdens het testproces.

Types van Ad Hoc Testmethode

Buddy Testing

Deze vorm van ad hoc testen wordt uitgevoerd met een minimum van twee personen. Het vindt plaats nadat unit testen van een module zijn uitgevoerd en afgerond. Dit type testen kan ook worden beschouwd als een combinatie van zowel systeem- als unit testen.

Het belangrijkste doel is dat twee ‘buddies’ tegelijkertijd werken aan het identificeren van defecten of bugs in dezelfde module. Dit team zal over het algemeen bestaan uit een software ontwikkelaar en een software tester.

De twee ‘buddies’ werken samen aan die module om geldige testgevallen te maken. Dit proces zorgt ervoor dat de tester geen fouten rapporteert die ongeldige testgevallen kunnen hebben gegenereerd.

Buddy-testen is succesvol gebleken omdat het de tester helpt betere testgevallen te ontwikkelen en het ontwikkelingsteam in staat stelt zo vroeg mogelijk wijzigingen in het ontwerp aan te brengen.

Aap-testen

Door het willekeurige karakter van het testen heeft deze methode de naam ‘aap-testen’ verdiend. Aap testen wordt meestal gedaan in de unit testen niveau. Hier testen testers willekeurig de applicatie of het product zonder testgevallen. Het belangrijkste doel van de tester is om de gegevens of tests op volkomen willekeurige manieren te analyseren, zodat het systeem bestand is tegen elke crash.

Testers voorzien de software van willekeurige inputs en observeren de bijbehorende outputs. Op basis van de uitvoergegevens kunnen zij eventuele fouten, inconsistenties of systeemcrashes beter vaststellen.

Paartesten

Gelijkaardig aan ‘buddy testing’ in sommige opzichten, houdt ‘pair testing’ in dat een paar testers samen aan de te testen modules werken. De twee testers zullen ideeën, kennis en meningen delen over dezelfde machine om defecten of fouten te identificeren.

Deze methode van testen houdt in dat testers worden gekoppeld op basis van hun expertise en kennisniveau, waardoor verschillende inzichten mogelijk zijn voor elk probleem dat ze identificeren. De twee testers delen dezelfde opstelling en delen ook het werk van het testen en het documenteren van alle waarnemingen tussen hen. Deze manier van testen maakt het ook mogelijk dat één tester de tests uitvoert, terwijl de ander aantekeningen kan maken over de bevindingen.

Lees ook: Gebruik pair-testing voor betere acceptatietests

Buddy vs. Pair-testing

Het belangrijkste verschil tussen buddy-testing en pair-testing is dat buddy-testing een combinatie is van unit- en systeemtesting. Een ander belangrijk verschil is dat buddy testing wordt uitgevoerd door ontwikkelaars en testers samen. Pair testing wordt echter alleen uitgevoerd door testers met verschillende kennisniveaus.

Wanneer wel en wanneer niet ad hoc testen uitvoeren

Ad hoc testen worden vaak uitgevoerd wanneer er een gebrek aan tijd is om langere en meer uitputtende testprocessen uit te voeren. De meer grondige testmethode omvat het opstellen van testvereisten documenten, testgevallen, en testcase ontwerpen.

Het ideale moment om ad hoc testen uit te voeren is na de voltooiing van alle formele testtechnieken. Ad hoc testen kunnen echter ook worden uitgevoerd in het midden van de software-ontwikkeling, na de volledige ontwikkeling van de software, of nadat een paar modules al zijn ontwikkeld.

Het is belangrijk om nota te nemen van de weinige scenario’s wanneer ad hoc testen niet wordt aanbevolen. Enkele omstandigheden waarin ad hoc testen niet moeten worden uitgevoerd zijn:

Wanneer Beta-testen worden uitgevoerd

In testgevallen die al bestaande fouten bevatten

Voordelen van Ad Hoc Testen

Een van de belangrijkste voordelen van ad hoc testen is dat het in staat is om eventuele fouten te identificeren die normaal gesproken onopgemerkt zouden blijven tijdens formele testmethoden. Dit kan veel tijd besparen, omdat er geen planning nodig is zoals bij gestructureerd testen.

Een ander voordeel is dat testers de applicatie vrijelijk kunnen verkennen, op basis van hun eigen kennis en begrip van de applicatie. Ze kunnen dan verschillende tests uitvoeren terwijl ze bezig zijn, wat helpt om fouten te identificeren tijdens het hele proces.

Drie, testers en ontwikkelaars van de applicatie kunnen de app gemakkelijk zelf testen, omdat er geen testcases nodig zijn. Hierdoor kunnen de ontwikkelaars gemakkelijk efficiëntere en bugvrije code maken.

Ad hoc testen kunnen ook worden gecombineerd met andere testtechnieken en daarna worden uitgevoerd om over het geheel genomen effectievere en informatievere resultaten te produceren.

Voordelen van ad hoc testen

Een van de belangrijkste nadelen van ad hoc testen is dat het eigenlijke testproces niet is gedocumenteerd, omdat het niet een bepaalde testcase volgt. Dit maakt het moeilijker voor de tests om een fout te regenereren. Want om die fout te krijgen, moet de tester zich de precieze stappen herinneren die hij/zij heeft genomen om daar te komen, wat niet altijd mogelijk is.

Occasioneel worden als gevolg van ongeldige testgevallen die door de tester zijn ontwikkeld, ongeldige fouten gerapporteerd. Dit kan een probleem worden bij de volgende foutopsporingsprocessen. Als de tester geen voorkennis heeft over de functionaliteit van de te testen applicatie, zal ad hoc testen niet zinvol zijn en geen fouten kunnen identificeren.

Ad hoc testen garandeert ook niet dat alle fouten gevonden zullen worden. Het succes van ad hoc testen is afhankelijk van de vaardigheid en kennis van de tester. Aangezien er geen vooraf opgestelde of gedocumenteerde testgevallen zijn, blijft de hoeveelheid tijd, moeite en middelen die in deze tests gaan zitten onbepaald. Het vinden van één fout kan een paar minuten tot een paar uur of langer duren.

Best Practices When Conducting The Testing

Tests die niet op de juiste manier worden uitgevoerd, kunnen onnodig tijdverlies veroorzaken. Met dit in gedachten, is het van cruciaal belang om te weten hoe het proces te optimaliseren om efficiënt uit te voeren succesvolle ad hoc testen.

De volgende best practices zal ervoor zorgen dat de tijd besteed aan het ondergaan van het proces verstandig wordt besteed met de beste kans op het verkrijgen van de gewenste resultaten.

Ben vertrouwd met de software

Het is noodzakelijk dat de tester het uitvoeren van de ad hoc testen heeft solide kennis en greep op de applicatie. Het is belangrijk dat de tester bekend is met alle belangrijke functies van de applicatie om een betere ‘error guessing’ te garanderen. Met de juiste kennis, zal de tester in staat zijn om meer bugs, fouten en algemene inconsistenties te vinden.

Identify Areas Likely To Have Errors

Als testers niet bekend zijn met de applicatie, dan is het raadzaam dat zij de foutgevoelige gebieden van de applicaties identificeren en van daaruit beginnen. Het selecteren van gevoelige gebieden om ad hoc testen uit te voeren zal testers in staat stellen om fouten met meer gemak te vinden.

Prioriteer gebieden waar de eindgebruiker het meest bij komt

Start met het testen van de gebieden van de applicatie die het meest worden gebruikt door de klanten en eindgebruikers. Door dit te doen, zullen zij de belangrijke eigenschappen eerst beoordelen, wat hen in staat stelt om eventuele bugs op voorhand te melden.

Losjes formuleren van het testplan

Hoewel ad hoc testen geen voorafgaande planning of documentatie vereist, is het nuttig om wat ruwe planning vooraf te doen. Het noteren van de belangrijkste gebieden die moeten worden getest, helpt de tester om zo veel mogelijk te dekken in de kortst mogelijke tijd.

Verhoog de efficiëntie met de juiste tools

Het is van cruciaal belang om de juiste tools te gebruiken, zoals taakmonitors, debuggers en profilers, om ervoor te zorgen dat het proces efficiënt verloopt. Ze vullen het vermogen van de testers aan om fouten te isoleren, omdat er gevallen kunnen zijn waarin uitzonderingen niet worden geïdentificeerd tijdens het testen.

Conclusie

Ad hoc testen vereist geen uitgebreide planning, documentatie en test-case ontwerpen. In plaats daarvan bespaart het tijd door het ad hoc karakter, en door het selecteren van testers die creatief zijn en voorkennis hebben van de functionaliteit van de applicatie. Met deze tests kunnen meer defecten worden gevonden dan met geplande tests.

Voeg 60.000+ abonnees

Voor de nieuwste blogs, industrie-updates en exclusieve tips.

*Uw e-mail is veilig bij ons, we hebben ook een hekel aan spam

Leave a Reply