Jmeter-timere: konstant, gaussisk tilfældig, ensartet (eksempel)

Indholdsfortegnelse:

Anonim

Hvad er timere?

Som standard sender JMeter anmodningen uden pause mellem hver anmodning. I så fald kan JMeter overvælde din testserver ved at komme med for mange anmodninger på korte tidspunkter.

Lad os forestille dig, at du sender tusindvis af anmodninger til en webserver under test om få sekunder. Dette er hvad der sker!

Timere gør det muligt for JMeter at forsinke mellem hver anmodning, som en tråd fremsætter. En timer kan løse serverens overbelastningsproblem .

I det virkelige liv ankommer besøgende heller ikke til et websted på samme tid, men med forskellige tidsintervaller. Så Timer hjælper med at efterligne adfærd i realtid.

I denne vejledning lærer du

  • Konstant timer
  • Gaussisk tilfældig timer
  • Ensartet tilfældig timer
  • BeanShell-timer
  • BSF-timer
  • JSR223 Timer
  • Sådan bruges konstant timer

Følgende er nogle almindelige typer af en timer i JMeter

Konstant timer:

Konstant timer forsinker hver brugeranmodning i det samme tidsrum.

Gaussisk tilfældig timer:

Gaussisk tilfældig timer forsinker hver brugeranmodning i en tilfældig periode.

Parametre:

Attribut Beskrivelse
Navn Beskrivende navn til denne timer, der vises i træet
Afvigelser (millisekunder) En parameter for Gaussisk distributionsfunktion
Konstant forsinkelsesforskydning (millisekunder) Yderligere værdi i millisekunder

Så den samlede forsinkelse er beskrevet som nedenstående figur:

Ensartet tilfældig timer:

Ensartet tilfældig timer forsinker hver brugeranmodning i en tilfældig periode.

Parametre:

Attribut

Beskrivelse

Navn

Beskrivende navn til denne timer, der vises i træet

Tilfældig forsinkelse maksimalt

Maksimalt tilfældigt antal millisekunder at forsinke.

Konstant forsinkelsesforskydning (millisekunder)

Yderligere værdi i millisekunder

Den samlede forsinkelse er summen af ​​den tilfældige værdi og forskydningsværdien.

BeanShell-timer

BeanShell-timeren kan bruges til at generere en forsinkelsestid mellem hver brugeranmodning.

BSF-timer

BSF-timeren kan bruges til at generere en forsinkelse mellem hver brugeranmodning ved hjælp af et BSF-scriptingsprog.

JSR223 Timer

JSR223-timeren kan bruges til at generere en forsinkelse mellem hver brugeranmodning ved hjælp af et JSR223-scriptingsprog

Sådan bruges konstant timer

I dette eksempel bruger du Constant Timer til at indstille en fast forsinkelse mellem brugeranmodninger til google.com.

Lad os starte med et simpelt test script

  1. JMeter opretter en brugeranmodning til http://www.google.com 100 gange
  2. Forsinkelsen mellem hver brugeranmodning er 5000 ms

Her er køreplanen for dette praktiske eksempel:

Forudsætning:

Vi genbruger trin 1 og trin 2 i tutorial JMeter Performance Testing.

Trin 1) Tilføj trådgruppe

Højreklik på testplanen, og tilføj en ny trådgruppe: Tilføj -> Tråde (brugere) -> Trådgruppe

I trådgruppens kontrolpanel skal du indtaste trådegenskaber som følger

Denne indstilling lader JMeter oprette en brugeranmodning til http://www.google.com 100 gange

Trin 2) Tilføj JMeter-elementer

  • Tilføj standard HTTP-anmodning
  • Tilføj HTTP-anmodning

Trin 3) Tilføj konstant timer

Højreklik på trådgruppe -> Timer -> Konstant timer

Konfigurering af trådforsinkelse på 5000 millisekunder

Trin 4) Tilføj visningsresultater i tabel

Vis resultater i tabel viser testresultatet i tabelformat.

Højreklik på Tilføj -> Lytter -> Se resultat i tabel

Vis resultater i tabel vises som nedenstående figur

Trin 5) Kør din test

Når du er klar til at køre en test, skal du klikke knappen Kør i menulinjen eller på hurtigtasten Ctrl + R

Dette er resultatet af denne test

Lad os for eksempel i ovenstående figur analysere prøve 2

  • Starttid er 22: 05: 01.866
  • Eksempeltid for prøve 2 er 172 ms
  • Konstant timer : 5000 ms (som konfigureret)
  • Slut tid af denne prøve er = 22: 05: 01,866 + 172 + 5000 = 22: 05: 07,038

Så prøve 3 skal starte klokken 22: 05: 07.039 (Som vist i ovenstående figur)

Den forsinkelse af hver prøve er 5000 ms

Hvis du ændrer den konstante timer er nul , vil du se, at resultatet er ændret

Lad os analysere prøve 1

  • Starttid er 22: 17: 39.141
  • Eksempeltid for prøve 2 er 370 ms
  • Konstant timer : 0 ms (som konfigureret)
  • Slut tid af denne prøve er = 22: 17: 39.141+ 370 + 0 = 22: 17: 39,511

prøve 2 skal starte kl. 22: 17: 39.512 (vist i ovenstående figur)

Fejlfinding:

Hvis du står over for problemet, mens du kører ovenstående scenario ... gør følgende

  1. Kontroller, om du opretter forbindelse til internettet via en proxy. Hvis ja, skal du fjerne proxyen.
  2. Åbn en ny forekomst af JMeter
  3. Åbn TimerTestPlan.jmx i Jmeter
  4. Dobbeltklik på trådgruppe -> Se resultat i tabel
  5. Kør testen