Performance testen, wat is dit eigenlijk precies?

Er bestaat nog al eens verwarring over wat Performance Testen nu precies is.

Feitelijk is performance testen een verzamelnaam van verschillende testtypen die als doel hebben het verzekeren van het verkrijgen van een functioneel kloppende response van een softwaresysteem binnen een acceptabele tijd.

De verschillende methoden die te onderscheiden zijn, zijn de volgende:

  1. Load testen
    Dit is de meest toegepaste vorm van performance testen. Kan het systeem een gebruikersbelasting aan die reëel (normaal en piek) te verwachten is? Denk hierbij aan de hoeveelheid gebruikers die inloggen, schermen opvragen, op menu’-items en buttons klikken, etc.
  2. Volume testen
    Kan het systeem een volumebelasting aan die reëel (normaal en piek) te verwachten is? Denk hierbij aan de hoeveelheid op te vragen data, aantal weg te schrijven records, etc.
  3. Stress testen
    Deze manier van performance testen heeft als doel het zoeken naar het breekpunt van een systeem. Bij welke belasting gaat het systeem onderuit en performt het helemaal niet meer. Dit breekpunt kan zo drastisch zijn dat het systeem definitief ‘onderuit gaat’. Het verlagen van de belasting betekent dan mogelijk niet dat het systeem even later weer bereikbaar is. Een server herstart en/of andere maatregelen kunnen nodig zijn.
  4. Soak testen
    Daar waar stress testen een tijdelijk piek simuleert, heeft soak testen het simuleren van een langdurige belasting als doel. Denk aan een reële belasting over een langere tijd. Dagen, weken, maanden. Lopen buffers niet vol, vinden er geen automatische maar ongewenste resets plaats na een x tijd, bezwijkt de hardware niet onder de langdurige belasting?
  5. Concurrency testen
    Hoeveel processen kunnen er tegelijkertijd draaien? 1000 gebruikers online op een webshop, zullen nooit tegelijkertijd gaan afrekenen in het winkelmandje. Maar vlak voor de deadline voor een voor een bezorging de volgende dag (dus bijvoorbeeld om 20:55 uur)  zullen misschien snel nog even 80 gebruikers een bestelling afronden. Kan het systeem 80 gelijktijdige betalingstransacties aan?

Bronnen:
www.eurostarconferences.com
www.wikipedia.org