Jmeter-timer: konstant, gaussisk slumpmässig, enhetlig [exempel]

Vad är timers?

Som standard JMeter skickar förfrågan utan att pausa mellan varje begäran. Isåfall, JMeter kunde överväldiga din testserver genom att göra för många förfrågningar på korta gånger.

Låt föreställa dig att du skickar tusentals begäran till en webbserver som testas inom några sekunder. Det här är vad som händer!

Timers in JMeter

Timers tillåter JMeter till fördröja mellan varje begäran som en tråd gör. En timer kan lösa servern överbelastning problem.

Också, i verkligheten kommer besökare inte till en webbplats samtidigt, utan med olika tidsintervall. Så Timer hjälper till att efterlikna beteendet i realtid.

Följande är några gemensam typer av timer i JMeter

Konstant timer

Konstant timer fördröjer varje användarbegäran för Samma tid.

Konstant timer i Jmeter

Gaussisk slumpmässig timer

Gauss slumpmässig timer fördröjer varje användarbegäran för en slumpmässig tid.

Gaussisk slumpmässig timer i Jmeter

parametrar

Attribut Description
Namn Descriptive namn för denna timer som visas i trädet
Avvikelser (millisekunder) A parameter av Gaussisk distributionsfunktion
Konstant fördröjningsoffset (millisekunder) Annat värde i millisekunder

Så den totala förseningen beskrivs som nedanstående figur:

Gaussisk slumpmässig timer i Jmeter

Uniform Random Timer

En enhetlig slumpmässig timer fördröjer varje användarbegäran under en slumpmässig tid.

Uniform Random Timer i Jmeter

parametrar

Attribut Description
Namn Descriptive namn för denna timer som visas i trädet
Slumpmässig fördröjning Maximum Maximalt slumpmässigt antal millisekunder att fördröja.
Konstant fördröjningsoffset (millisekunder) Annat värde i millisekunder

Den totala fördröjningen är summan av slumpvärdet och offsetvärdet.

BeanShell Timer

Smakämnen Beanshell Timer kan användas för att generera en fördröjningstid mellan varje användarförfrågan.

BSF Timer

BSF-timern kan användas för att generera en fördröjning mellan varje användarförfrågan med hjälp av en BSF skriptspråk.

JSR223 Timer

JSR223-timern kan användas för att generera en fördröjning mellan varje användarförfrågan med hjälp av en JSR223 skriptspråk

Hur man använder konstant timer

I det här exemplet kommer du att använda Konstant timer för att ställa in en fast fördröjning mellan användarförfrågningar till google.com.

Låt oss börja med ett enkelt testskript

  1. JMeter skapar ett användarens begäran till http://www.google.com 100 gånger
  2. Dröjsmål mellan varje användarförfrågan är 5000 ms

Här är färdplan för detta praktiska exempel:

Använd konstant timer i Jmeter

Förkonditionering

We återanvändning steg 1 och steg 2 i handledningen JMeter Prestandatester.

Steg 1) Lägg till trådgrupp

Högerklicka på Testplan och lägg till en ny trådgrupp: Lägg till-> Trådar (användare) ->Trådgrupp

I Trådgruppskontrollpanelen anger du Trådegenskaper enligt följande

Lägg till trådgrupp

Den här inställningen tillåter JMeter skapa ett användarens begäran till http://www.google.com in 100 gånger

Steg 2) Lägg till JMeter element

  • Lägg till standard för HTTP-begäran
  • Lägg till HTTP-begäran

Steg 3) Lägg till konstant timer

Högerklicka Trådgrupp -> timer -> Konstant timer

Lägg till konstant timer

Konfigurera trådfördröjning på 5000 millisekunder

Lägg till konstant timer

Steg 4) Lägg till vyresultat i tabell

Visa resultat i tabell visar testresultatet i tabellformat.

Högerklicka Lägg till -> Lyssnare ->Visa resultat i tabell

Lägg till vyresultat i tabell

Visa resultat i tabellvisningar enligt bilden nedan

Lägg till vyresultat i tabell

Steg 5) Kör ditt test

Klicka på när du är redo att köra ett test på rymmen knapp på menyraden eller kortknapp Ctrl + R

Detta är resultatet av detta test

Kör testet

Till exempel, i figuren ovan, låt analysera Prov 2

  • Starttid är 22:05:01.866
  • prov Tid av prov 2 är 172 ms
  • Konstant timer: 5000 ms (som konfigurerat)
  • Sluttid av detta prov är = 22:05:01.866 + 172 + 5000 = 22:05:07.038

Så prov 3 bör starta vid den tidpunkten 22:05:07.039 (Som visas i bilden ovan)

Smakämnen fördröja av varje prov är 5000 ms

Om du ändrar Constant Timer är noll-, kommer du att se resultatet ändras

Kör testet

Låt analysera Prov 1

  • Starttid är 22:17:39.141
  • prov Tid av prov 2 är 370 ms
  • Konstant timer : 0 ms (som konfigurerat)
  • Sluttid av detta prov är = 22:17:39.141+ 370 + 0 = 22:17:39.511

Prov 2 bör börja vid tidpunkten är 22:17:39.512 (Visas i bilden ovan)

Felsökning

Om du stöter på problemet när du kör scenariot ovan ... gör följande

  1. Kontrollera om du ansluter till internet via en proxy. Om ja, ta bort proxyn.
  2. Öppna en ny instans av JMeter
  3. Öppna TimerTestPlan.jmx i Jmeter
  4. Double Klicka på Trådgrupp -> Visa resultat i tabell
  5. Kör testet