Vaak nemen organisaties projectresultaten in productie omdat men denkt dat het resultaat van goede kwaliteit is. Immers, het testproces heeft geen fouten gedetecteerd, of gevonden fouten zijn opgelost. De vragen die gesteld moeten worden zijn bijvoorbeeld: heb je de testen op de juiste wijze opgezet en uitgevoerd, zodat je de risico’s voldoende afdekt? Test je die aspecten die de meeste toegevoegde waarde hebben voor de business? En heb je voldoende inzicht in het testproces om de kwaliteit goed in te kunnen schatten? Ik geef jullie 3 tips om als organisatie meer waarde uit de testen te halen.
“Het niet vinden van fouten tijdens testen is geen indicator van kwaliteit”
Goyko Adzic, 2013
Tip 1: Krijg inzicht in het testproces
Een goed proces is een beheerst proces. Je weet wat het proces in gaat, je weet welke activiteiten wanneer in het proces plaatsvinden en je weet wat het resultaat van het proces is. In de praktijk zie ik vaak dat de testmanager of testcoördinator niet of onvoldoende in staat is te rapporteren over de voortgang of status van het testproces. Hoeveel procent van de testen zijn gestart, uitgevoerd en hoeveel tijd heb je nog nodig om de testen te voltooien? Wat is de status van de gevonden defects? Op het oog eenvoudige vragen, die zeker gesteld worden door de opdrachtgever of de projectmanager.
Tip: Maak voorafgaand aan het testproces duidelijke afspraken met de stakeholders. Hoe ga je testen, welke uitgangspunten hanteer je, welke processen of risico’s ga je afdekken en hoe ga je die testuitvoering monitoren? Zorg met tooling (mag ook Excel zijn) dat alle test cases of test charters zijn vastgelegd. Zorg dat deze voorzien zijn van een status. Tot slot, zorg voor een overkoepelend rapport in de tool (of in Excel) wat inzicht geeft in de voortgang van het testen. In de meeste tooling en in Excel is het eenvoudig om dit visueel te maken in een dashboard. Zo heb je altijd inzicht en het antwoord op de vragen die gaan komen. Inzicht maakt het mogelijk om tijdig bij te sturen.
Tip 2: Kies de juiste teststrategie
myBrand heeft relatief veel klanten waarbij testen niet een volwassen activiteit is. Bij het opstellen van de projectplanning wordt vaak tijd gereserveerd om alles te testen. En dan bedoel ik ook écht alles. In trainingen die ik verzorg zeg ik altijd dat 100% testen niet mogelijk is. Daar heeft een organisatie geen tijd, geld en mankracht voor beschikbaar. Er zijn feitelijk twee manieren om het testen te benaderen en te komen tot de passende teststrategie.
Tip: Baseer de testaanpak op het afdekken van de risico’s of op het borgen van de meeste toegevoegde waarde voor de business. Veel testmethodieken zijn gebaseerd op Risk Based Testing. Vanuit een risicoanalyse worden de risico’s bepaald en geclassificeerd. Op basis van de risicoklasse kun je dan bepalen hoe je gaat testen. Functionaliteit met een hoog risico test je diepgaander dan functionaliteit met een laag risico. Voor een deel van de functionaliteit geldt zelfs dat er geen risico is. Mijn motto: No risk, no test! Een variant hierop is het Value Based Testing. Hier wordt bepaald welke aspecten van het systeem de meeste toegevoegde waarde hebben voor de business. Op die aspecten met de meeste toegevoegde waarde ligt de focus in de testaanpak. Stel een klant brengt een bestaand pakket van on-premise naar de cloud voor haar klanten. De functionaliteit wijzigt niet. De toegevoegde waarde van het testen zit dan niet in het testen van de functionaliteit, maar in het testen van de performance en security.
Tip 3: Selecteer de juiste testmethode(n)
Vanuit testmethodieken als TMAP of ISTQB is de testuitvoering vaak planmatig ingericht. Dit betekent dat er een testplan ligt, dat er test cases beschikbaar zijn of deze worden tijdig opgeleverd. Vervolgens voert de organisatie de testen uit op basis van die test cases. Niets mis mee. Toch komen ook deze organisaties in situaties waarbij niet alle test cases vooraf kunnen worden bijgewerkt en/of bedacht, door gebrek aan tijd of resources. Dan is het goed om te weten dat er ook andere testmethoden zijn die passen bij zo’n situatie.
Tip: Het testspectrum bevat veel meer mogelijkheden dan alleen planmatig testen. Het spectrum loopt van volledig planmatig (links) naar volledig actiegericht (rechts). Daartussen liggen andere mogelijkheden die elk passen bij een bepaalde situatie. En let wel, de kwaliteit van de testuitvoering wordt er niet minder van.
Per situatie kun je de afweging maken welke testmethode daar het beste bij aansluit. Voor bepaalde situaties is het op voorhand uitwerken van de test cases ideaal (Global scripting). Zijn test cases niet voorhanden en is er onvoldoende tijd, dan kan het lonen om Session based testing te doen. Daarbij leg je in test charters in hoofdlijnen vast wat je wilt testen in een testsessie. Na de sessie bespreek je de resultaten en bepaald het vervolg. Zijn er geen requirements, is er geen tijd, dan kan Exploratory testing worden toegepast. Het resultaat daarvan is een prachtige set aan uitgevoerde test cases. Dit is niet zo maar wat doen; het is heel bewust met ervaring door een bepaald systeem gaan met verslaglegging van wat er getest wordt. Bij elke methode is inzicht in de kwaliteit verkrijgen het doel.
What’s next?
Deze 3 tips zijn handvaten om snel meer in control te komen op het testproces, te borgen dat je de goede dingen doet en die dingen goed doet. Maar er zit meer achter deze tips. Om het testproces verder te verbeteren zijn er nog legio mogelijkheden. Om jullie daarin verder te helpen ga ik de komende periode 2-wekelijkse elke tip in een aparte blog behandelen, waarin ik in meer detail vertel wat je kunt doen om die verbetering te realiseren.
Heb je na het lezen van deze blog vragen, dan helpen we je graag verder.