top of page
Foto van schrijverRené Meijboom

Performancetesten overdragen naar teams

Bijgewerkt op: 7 nov. 2023


We zien bij onze klanten een duidelijke verschuiving van verantwoordelijkheden van centrale teams naar DevOps teams. “You build it, you run it” zorgt ervoor dat teams niet alleen zelf software moeten bouwen, testen en in productie brengen, maar ook verantwoordelijk zijn voor hoe de applicatie in productie draait. Eén van de activiteiten die we zien verschuiven, is het performancetesten. In deze blog willen we onze visie delen m.b.t. het overdragen van performancetesten van een centraal team of CoE (Center of Expertise) naar DevOps teams.


De initiële reactie van performancetesters is vaak dat performancetesten een expertise is die niet zomaar overgedragen kan worden. Meestal zijn dit specialisten die al vele jaren met het vak bezig zijn en zij zien deze transitie dus ook als een gevaar. Zowel voor hun eigen rol, maar ook voor de kwaliteit van performancetesten. Door lage kwaliteit performancetesten kunnen problemen verborgen blijven en dit kan grote gevolgen hebben voor de beschikbaarheid van applicaties in productie. Een veel gehoord argument is dat er specifieke kennis nodig is voor het performancetesten. Deze kennis is meestal niet aanwezig bij de teams. Teams hebben al zoveel taken en verantwoordelijkheden en het is simpelweg niet mogelijk om overal specialist in te zijn. En dat is natuurlijk een valide argument.
















Toch is het (deels) mogelijk om performancetesten succesvol over te dragen aan DevOps teams. Mits aan een aantal voorwaarden wordt voldaan. Deze voorwaarden worden hieronder opgesomd en later verder toegelicht:

  • Automatiseren – Automatiseer het uitvoeren van performancetesten.

  • Korte herhaaldelijke testen – Maak onderscheid in korte testen (voor regressie) en specialistische testen.

  • Specialist behouden – Binnen de organisatie moet een performancetestspecialist beschikbaar zijn voor ondersteuning en kwaliteitscontrole.

  • Affiniteit en basiskennis – Affiniteit met performance en basiskennis van performancetesten (scripting, analyse e.d.) moet binnen het team aanwezig zijn.

  • Tijd en aandacht – Product owner moet adoptie van en overdracht naar het team (onder)steunen en daar tijd voor inplannen.


Automatiseren

Door het automatiseren van het uitvoeren van performancetesten kan er een flinke versnelling in het opleveren van de performancetestresultaten worden bereikt.


Bij het automatiseren moet je denken aan:

  • Het voorbereiden van de test (zoals klaarzetten van testdata en monitoring)

  • Het starten van de simulatie

  • Het verzamelen van monitoringgegevens en de resultaten van de test

  • Het analyseren en rapporten van de testresultaten (inclusief vergelijken met vorige resultaten)

Dit bespaart een hoop tijd en voorkomt ook dat de performancetester (of degene die met die taak belast is) herhaaldelijk werk moet doen en zorgt ervoor dat deze zich enkel hoeft te focussen op wijzigingen in scope, volumes en andere requirements.


Korte herhaaldelijke testen

Er bestaan meerdere type performancetesten die voor verschillende doelen worden ingezet. Door onderscheid te maken tussen eenvoudige herhaalbare testen en specialistische testen is het mogelijk om eenvoudige testen over te dragen naar het team en specialistische testen bij de performancetestspecialisten neer te leggen.


Bij korte, herhaaldelijke testen is automatiseren van de uitvoer van performancetesten een prima aanpak maar bij specialistische testen is dit vaak minder bruikbaar. Specialistische testen (zoals duurtest, failover test) worden met minder regelmaat uitgevoerd en het scenario zal vaak anders zijn.


Specialist behouden

Binnen de organisatie moet een performancetestspecialist beschikbaar zijn voor ondersteuning en kwaliteitscontrole. Bij grotere organisaties zullen dat wellicht meerdere specialisten zijn. De hierboven genoemde specialistische testen kunnen door deze performancetestspecialisten worden uitgevoerd. Door het uitvoeren van kwaliteitscontrole kunnen performancetestspecialisten de teams helpen om de kwaliteit van performancetesten op een goed niveau te houden.
















Affiniteit en basiskennis

Om performancetesten succesvol te kunnen overdragen naar teams moet er wel een zekere basiskennis van performancetesten binnen het team aanwezig zijn. Toolkennis is nodig om het bestaande script te kunnen aanpassen aan de gewijzigde functionaliteit en om analyse van de resultaten te kunnen doen.


Naast deze basiskennis zal er in het team ook enige affiniteit met performance moeten zijn. Dit zal het team nodig hebben om regelmatig na te gaan of er nieuwe risico’s op het gebied van performance zijn. Denk hierbij aan responstijd, stabiliteit, capaciteit en andere aspecten van performance.


Tijd en aandacht

Het overdragen van performancetesten van performancetestspecialisten naar teams zal alleen succesvol zijn als de product owner van het team ook het belang van performancetesten inziet en voldoende tijd zal inruimen in de sprint planning voor de overdracht van performancetesten.


Naast de overdracht naar het team is ook de adoptie van performancetesten door het team van belang. Hierbij is het belangrijk dat het niet bij één persoon komt te liggen maar dat het breed gedragen wordt. Anders bestaat het gevaar dat de kennis van performancetesten verdwijnt bij wisseling in het team.


Tot slot

Hierboven hebben wij onze visie gedeeld over hoe performancetesten overgedragen kan worden naar teams en wat de voorwaarden hiervoor zijn. We horen graag wat jouw ervaring is.

8 weergaven0 opmerkingen

Recente blogposts

Alles weergeven

Comments


bottom of page