Loadtesten en prestatiebenchmarking (JMeter en k6) · Les

Timers voor realistische timing

Pas verschillende timers toe om realistische vertragingen tussen aanvragen te introduceren en zo de denktijd van gebruikers te simuleren.

Les 3 van 411 stappen

Timers voor realistische timing is een gratis Loadtesten en prestatiebenchmarking (JMeter en k6)-les op CoddyKit. Dit is les 3 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Loadtesten en prestatiebenchmarking (JMeter en k6). Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Loadtesten en prestatiebenchmarking (JMeter en k6) bevat in totaal 4 lessen.

Realistisch gebruikersgedrag simuleren

Bij het testen van applicaties is het cruciaal om realistisch gebruikersgedrag te simuleren. Gebruikers klikken niet onmiddellijk en werken niet direct met een app; ze lezen, denken na en typen.

Timers in tools voor prestatietests, zoals JMeter, helpen om deze natuurlijke pauzes toe te voegen. Zo worden je belastingstests realistischer en representatiever voor werkelijk gebruik.

Wat is de denktijd van een gebruiker?

Denktijd is de vertraging die een echte gebruiker laat ontstaan tussen opeenvolgende acties op een website of in een applicatie. Dit is het menselijke element van interactie.

  • Inhoud op een pagina lezen
  • Formulieren invullen of gegevens invoeren
  • Bepalen op welke link je vervolgens klikt
  • Pauzeren om informatie te verwerken

Zonder denktijd te simuleren kan je test een onrealistische, 'burstachtige' belasting veroorzaken.

Kennismaken met JMeter-timers

JMeter bevat verschillende ingebouwde timers waarmee je vertragingen aan je testplan kunt toevoegen. Elke timer biedt een andere manier om het tempo van verzoeken te regelen, zodat je verschillende vormen van gebruikersgedrag kunt modelleren.

We richten ons op de meest voorkomende timers voor het simuleren van de denktijd van gebruikers:

  • Constant Timer
  • Uniform Random Timer
  • Gaussian Random Timer

Vaste vertragingen met Constant Timer

De Constant Timer is de eenvoudigste timer. Deze pauzeert elke thread (virtuele gebruiker) gedurende een vaste, vooraf bepaalde tijd nadat de thread het verzoek heeft voltooid.

Als je een Constant Timer instelt op 3000 milliseconden, wacht elke virtuele gebruiker precies 3 seconden voordat het volgende verzoek binnen het bereik wordt verzonden.

Dit is handig wanneer je een consistente, voorspelbare vertraging nodig hebt.

De Constant Timer gebruiken

Als je een Constant Timer wilt toevoegen, klik je met de rechtermuisknop op een Thread Group, Controller of Sampler en ga je naar Add > Timer > Constant Timer.

Je configureert deze door de waarde 'Delay' in milliseconden in te stellen. Bijvoorbeeld 5000 voor een pauze van 5 seconden.

De timer past de vertraging toe vóór de sampler waaraan deze is gekoppeld, of op alle samplers binnen het bereik ervan (als deze aan een controller of Thread Group is gekoppeld).

Willekeurige vertragingen met Uniform Timer

De Uniform Random Timer voegt een willekeurige vertraging toe die gelijkmatig over een minimum- en maximumwaarde is verdeeld. Dit betekent dat elke vertraging binnen het opgegeven bereik even waarschijnlijk is.

Als het bereik bijvoorbeeld 1 tot 5 seconden is, kan de ene gebruiker 1,2 seconden wachten, een andere 3,7 seconden en weer een andere 4,9 seconden — allemaal met dezelfde waarschijnlijkheid.

Uniform Random Timer configureren

De Uniform Random Timer heeft twee belangrijke instellingen:

  • Random Delay Maximum (ms): dit is de bovengrens van het willekeurige deel van de vertraging.
  • Constant Delay Offset (ms): dit is een basisvertraging die altijd bij de willekeurige waarde wordt opgeteld.

Als je Maximum instelt op 4000 en Offset op 1000, ligt de totale vertraging tussen 1000 ms en 5000 ms (1 tot 5 seconden).

Gaussian Random Timer voor realistische spreiding

De Gaussian Random Timer levert vertragingen volgens een normale verdeling (klokvormige curve). Dit is vaak realistischer voor het simuleren van menselijk gedrag dan een uniforme verdeling.

De meeste acties liggen rond een gemiddelde vertraging, terwijl er minder acties veel korter of veel langer duren. Denk bijvoorbeeld aan de meeste mensen die ongeveer 3 seconden pauzeren, terwijl sommigen sneller zijn (1 seconde) en anderen langzamer (5 seconden).

Gaussian Timer configureren

Voor de Gaussian Random Timer configureer je het volgende:

  • Deviation (ms): dit bepaalt hoeveel de vertragingen mogen afwijken van het gemiddelde. Een grotere afwijking betekent een bredere spreiding van vertragingen.
  • Constant Delay Offset (ms): dit is de gemiddelde vertraging waaromheen de willekeurige waarden worden gecentreerd.

De werkelijke vertraging is Offset + (random value with given deviation).

Timer-uitdaging

Je moet gebruikers simuleren die gemiddeld 4 seconden tussen acties pauzeren. Je wilt echter ook natuurlijke variatie toevoegen: de meeste pauzes liggen dicht bij 4 seconden, maar enkele zijn iets korter of langer.

Welke JMeter-timer is het meest geschikt voor dit scenario?

Samenvatting van timers

Goed gedaan! Je hebt geleerd hoe je JMeter-tests realistischer maakt door de denktijd van gebruikers met verschillende timers te simuleren.

  • Constant Timer: levert een vaste, voorspelbare vertraging.
  • Uniform Random Timer: genereert willekeurige vertragingen die binnen een opgegeven bereik even waarschijnlijk zijn.
  • Gaussian Random Timer: modelleert realistische menselijke pauzes met vertragingen rond een gemiddelde, volgens een klokvormige verdeling.

Het gebruik van timers is cruciaal om nauwkeurige belastingspatronen te genereren en betekenisvolle inzichten in prestaties te verkrijgen. Hierna bekijken we geavanceerdere functies van JMeter!

Gratis beginnen

Leer Loadtesten en prestatiebenchmarking (JMeter en k6) met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “Timers voor realistische timing” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Loadtesten en prestatiebenchmarking (JMeter en k6), waaronder “Timers voor realistische timing”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Loadtesten en prestatiebenchmarking (JMeter en k6) bevat in totaal 4 lessen.

Wat leer ik in “Timers voor realistische timing”?

Pas verschillende timers toe om realistische vertragingen tussen aanvragen te introduceren en zo de denktijd van gebruikers te simuleren. Je oefent met Loadtesten en prestatiebenchmarking (JMeter en k6) door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Loadtesten en prestatiebenchmarking (JMeter en k6) te beginnen?

Ervaring vooraf is niet nodig. Loadtesten en prestatiebenchmarking (JMeter en k6) op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.

Hoe lang duurt de les “Timers voor realistische timing”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Loadtesten en prestatiebenchmarking (JMeter en k6)?

Ja. Elke les over Loadtesten en prestatiebenchmarking (JMeter en k6) bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Logica- en luscontrollers
  2. Assertions voor responsevalidatie
  3. Timers voor realistische timing
  4. Gedistribueerd testen met externe servers
← Terug naar Loadtesten en prestatiebenchmarking (JMeter en k6)