Waarom stresstesting alleen niet voldoende is voor je webapp!

JavaScript Selenium

Niet alles dat er op papier goed uit ziet, is dat ook in de realiteit. Dit geldt zeker ook bij het ontwikkelingen van websites, webapplicaties en meer. Om zijn of haar voortgang te valideren voert een ontwikkelaar dan ook continu testen uit. Dit wordt ook wel stresstesting genoemd. Gelukkig zijn de meeste tegenwoordig geautomatiseerd. Dat geldt echter niet voor de belangrijkste component: de test zelf.

Testen in drievoud

Het testen van een webapp gebeurt meestal in de drie lagen, weergegeven in onderstaande piramide.

Door Unit testing controleer je of bijvoorbeeld een verzendknop doet waar hij voor gemaakt is. Je test één simpele functie, simpelweg om te checken of hij goed geprogrammeerd is.

Heb je echter een online formulier, dan wil je natuurlijk ook controleren of alle vereiste invulvelden wel ingevuld zijn voordat je kunt verzenden. Het testen van een combinatie van functies wordt ook wel integration testing genoemd.

De laatste vorm van testen probeert menselijk gedrag (user interface) te simuleren. Het test iedere functie in het formulier en iedere stap die daaraan verbonden is. Ieder veld, iedere manier om ze in te vullen, het versturen van het formulier en zelfs het ontvangen van de automatisch verstuurde ontvangstbrief.

Automatisch testen bespaart tijd

Je kunt je ongetwijfeld voorstellen dat het handmatig uitvoeren van al deze stresstesten veel tijd in beslag neemt. Gelukkig zijn er tegenwoordig veel applicaties beschikbaar die het uitvoeren van de testen automatiseren. Gemiddeld verlaagt dit de bestede hoeveelheid tijd met 36 procent. Een aanzienlijk percentage. Het zorgt er bovendien voor dat ieder stukje nieuwe code automatisch wordt gecontroleerd en dus niet per ongeluk de hele app in de testmodus laat crashen.

Het hebben en uitvoeren van een stresstest voor je webapp is dus een noodzaak wanneer je er eentje bouwt. Het bespaart veel tijd en creëert extra veiligheid.

Stresstest bouwen

Hiermee is het verhaal echter nog niet ten einde. Er is namelijk één ding dat niet kan worden geautomatiseerd en dat veel kennis en ervaring vereist: het bouwen van de test.

Alle factoren begrijpen

Om een voorbeeld te geven. Als je realistisch menselijk gedrag wil nabootsen, dan moet je wel weten hoe jouw doelgroep zich gedraagt. Zo gaat een ouder persoon anders om met een app dan een jonger persoon, waardoor een andere aanpak en gebruikservaring nodig is. Alles bij elkaar zijn er vele van dit soort factoren waar je rekening mee moet houden wanneer je een test bouwt.

Het dataprobleem

Verder kan ook het testen van de ‘pijpleidingen’ die de data als het ware transporteren tussen de server en de frontend een uitdaging zijn. In veel gevallen wijkt de testdata namelijk af van wat er in de praktijk gebruikt zal worden. Dit kan ervoor zorgen dat de testresultaten worden gemanipuleerd. Er zeker van zijn dat de test zo dicht mogelijk in de buurt komt van werkelijk menselijk gedrag is duidelijk geen simpele opdracht en vereist veel inzicht en ervaring.

Slimme investering

Wil je er zeker van zijn dat jouw webapp optimaal gaat functioneren, neem dan geen halve maatregelen. Zorg er ten eerste voor dat alle voortgang drievoudig wordt getest. Zorg er ten tweede voor dat dit zoveel mogelijk automatisch wordt uitgevoerd en tot slot: bespaar niet in de kosten en tijd bij het (laten) bouwen van de test. Bovendien zal deze test een stuk langer meegaan dan alleen het ontwerpproces. Ook wanneer je jouw app gaat updaten of upgraden zal hij zijn waarde zonder meer bewijzen.

Wil je meer weten over het belang van testen of kun je wel wat extra ervaring en kennis gebruiken op dit gebied? Dan kunnen we je zeker helpen! Neem contact op met één van onze experts voor meer informatie. Ben je benieuwd naar een voorbeeld uit de praktijk? Lees dan vooral onze business case over KLM voor meer inspiratie.