<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=183007195643433&amp;ev=PageView&amp;noscript=1">

Valid Blog

business-intelligence-featured

Een dag in het leven van een software tester

Je software gedraagt zich vreemd. Het kraakt hier en daar en de front end werkt niet naar behoren waardoor gebruikers niet tevreden zijn. Nou, ik denk dat het tijd wordt om een software tester er op los te laten. 

Bevindingen, de hele dag door

Maar waarom een software tester vraag je je wellicht af? Software testers zijn verantwoordelijk voor het aantonen van de kwaliteit van software, door middel van het vinden en rapporteren van bevindingen.
Maar hoe ziet dat er nu uit? Waar spenderen testers hun tijd aan en hoe gaan ze te werk? In deze blog wil ik dit graag met je delen.

Bevindingen, bugs, issues, defects, problems en waarschijnlijk nog wel meer test-jargon dat gebruikt wordt in deze wereld – het moet immers niet te ingewikkeld worden.

Ongeacht de expertise die ontwikkelaars hebben en ongeacht de tijd die zij investeren in het borgen van de kwaliteit… Ook voor software ontwikkeling geldt: Er zullen altijd fouten worden gemaakt. En als een software tester is het jouw verantwoordelijkheid om die te vinden.

De uitdagingen van een software tester zitten hem in het feit dat veel bevindingen niet direct worden opgelost – sorry ontwikkelaars, we weten dat jullie het druk hebben –. Software testers zullen in veel gevallen heen en weer in discussie moeten gaan met de ontwikkelaars om duidelijkheid te geven over de bevindingen. Meer informatie zal er moeten worden gegeven om de bevindingen duidelijker te maken. Bijvoorbeeld informatie over waar het gevonden is, een reproductie-scenario, welke data gebruikt is en welke versie van de software getest is. Zo kunnen de ontwikkelaars de bevindingen beter en sneller oplossen.

De tester als spin in het web 

Software testers moeten over een specifieke set van vaardigheden beschikken om hun dageljkse activiteiten te kunnen uitvoeren. Communication is key! 

Een bevinding is niet per definitie iets dat te maken heeft met een applicatie of product. De bevinding kan in een eerder stadium worden gevonden, zelfs nog voor dat er ook maar een regel code wordt geschreven. Bijvoorbeeld uit documentatie van de business analisten. Samen met de business analist wordt er dan gekeken naar de onduidelijkheden in het document die, als ze blijven bestaan, later voor fouten in de software kunnen zorgen. 

Wanneer een software tester er achter komt dat een bevinding die is gerapporteerd nog steeds niet is opgelost, zal de software tester er achter moeten komen wat hier de reden van is. De software tester zal dan rechtstreeks met een ontwikkelaar samen zitten om zo snel mogelijk de bevinding op te lossen. Nadat er een update is gegeven door de ontwikkelaar, zal de tester de bevinding zo snel mogelijk hertesten. 

Als onderdeel van de dagelijkse taken schakelt een software tester dus met verschillende partijen. Ontwikkelaars voorzien en op de hoogte houden van de geregistreerde bevindingen. Business analysten op de hoogte brengen van onduidelijkheden in de documentatie. En daarnaast brengt de software tester ook de test coördinator/-manager op de hoogte door middel van bijvoorbeeld een voortgangsrapport. Een tester is dan ook een heuse spin in het test-web. 

Testen, testen, testen 

Nadat de organisatorische- en communicatieve taken zijn voldaan, start een software tester zijn dagelijkse test taken door de eerste testscripts op te pakken (afhankelijk van de situatie; uitschrijven, uitvoeren of automatiseren van de scripts). Doorgaans in volgorde gebaseerd op prioriteit. Prioriteit wordt gebaseerd op hoe belangrijk en hoe snel een deel van de applciatie nodig is, maar ook hoe complex het is en hoe groot de kans op fouten is. 

Om een voorbeeld te geven: de software tester heeft een testscript geschreven waarin staat dat het aanmeldscherm getest zal worden. De uitkomst zal zijn dat aanmelden werkt en de applicatie de juiste pagina laat zien na het aanmelden. Dit script zal als hoogste prioriteit worden bestempeld, want zonder een goed werkend aanmeldscherm kunnen de eindgebruikers niet werken. Als het aanmeldscherm is getest en er volgt een bevinding uit, dan zal de software tester de bevinding registreren in een bevindingsmanagementsysteem. De bevinding zal dan door een ontwikkelaar worden opgepakt. Zodra de bevinding is opgelost, zal deze gehertest worden. 

Een software tester test uiteraard niet alleen de goed-paden. Fout-paden zijn misschien nog wel belangrijker. Hierin worden test-scenario’s geschreven waarin je bijvoorbeeld een verkeerd wachtwoord invoert, ongebruikelijke tekens in de inlognaam gebruikt, verplichte velden leeg laat, noem maar op. Dit zorgt ervoor dat we weten of de huidige applicatie de juiste informatie weet te gebruiken en daarbij de juiste foutmeldingen weergeeft. 

Testen kost tijd en geld 

We kunnen uit bovenstaande wel opmerken dat testen tijd kost. Veel tijd zelfs. Een document van business analisten doorlopen kost al gauw een paar uur. Het voorbereiden van testscripts kost al gauw een paar dagen. Dit komt voornamelijk door het feit dat een tester graag zoveel mogelijk wilt vastleggen en zoveel mogelijk goed-, en foutpaden wilt opstellen. 

Daarnaast zal een tester grondig onderzoeken welke testdata hij nodig heeft op het moment dat de uitvoering van start gaat. De uitvoeringsfase kan een aantal dagen tot een aantal weken duren, afhankelijk van de lengte en prioritisering van de test-scripts. 

Alle bovenstaande stappen kunnen nog langer duren als de software tester de software nog niet kent of nog geen test-ervaring heeft. En zelfs ervaren software testers kunnen langer zoet zijn dan verwacht. Maar dit alles betekent niet dat het de investering niet waard is, integendeel, het is het absoluut waard. 

Waarom? Ten eerste, veel testwerkzaamheden gebeuren parallel aan de design-en ontwikkeltijd. Ten tweede, bedenk hoeveel tijd en geld je al bespaart door meteen een goed werkend product naar de markt te brengen. Al met al, hoe eerder in het proces je de bevinding vindt, hoe minder tijd en dus geld het kost om hem op te lossen. 

NIST-relatieve-kosten-bugs-testing

Er zit muziek in testen! 

Er komen veel vaardigheden kijken bij het dagelijkse werk van een software tester. Geen dag is hetzelfde, elke dag zijn er weer nieuwe uitdagingen. Dat maakt het testvak ook zo leuk en dynamisch, al zeg ik het zelf. 

Uiteindelijk zal een professionele test-practice doorlooptijden verkorten en bottom line geld besparen. Bezig zijn met een vak dat tijd- en kostenbesparing realiseert klinkt toch als muziek in de oren? 

Mijn doel is om je er van te overtuigen dat testen een belangrijke stap is in het proces van software-ontwikkeling en het zeker geen stap is die je moet overslaan. Hopelijk heb ik je kunnen overtuigen van het belang van goede test(ers). Of in ieder geval hoop ik dat ik je inzicht heb kunnen geven in waar een tester nu de hele dag mee bezig is. Als je er nu hetzelfde over denkt of dat ik je aan het denken heb gezet, dan heb ik in ieder geval mijn doel bereikt. Ik ben erg benieuwd naar jouw mening rondom dit mooie vakgebied, ik zie je reactie graag tegemoet in de comments!  

Terug naar blogoverzicht
Danny Caris

Written by Danny Caris

Test Consultant @ Valid

Laat je reactie achter