Jmeter-timere: Konstant, Gaussisk tilfældig, ensartet [Eksempel]

Hvad er timere?

Som standard JMeter sender anmodningen uden at holde pause mellem hver anmodning. I det tilfælde, JMeter kunne overvælde din testserver ved at lave for mange anmodninger på kort tid.

Lad dig forestille dig, at du sender tusinder forespørgsel til en webserver under test om få sekunder. Dette er hvad der sker!

Timer ind JMeter

Timer tillader JMeter til forsinkelse mellem hver anmodning, som en tråd fremsætter. En timer kan løse serveren overbelastning problem.

Således, i det virkelige liv ankommer besøgende ikke til en hjemmeside alle på samme tid, men med forskellige tidsintervaller. Så Timer hjælper med at efterligne realtidsadfærden.

Følgende er nogle fælles typer af en timer i JMeter

Konstant timer

Konstant timer forsinker hver brugeranmodning om samme tid.

Konstant timer i Jmeter

Gaussisk tilfældig timer

Gauss tilfældig timer forsinker hver brugeranmodning om en tilfældig tid.

Gaussisk tilfældig timer i Jmeter

parametre

Attribut Description
Navn Descriptive navn for denne timer, der vises i træet
Afvigelser (millisekunder) A parameter af Gaussisk distributionsfunktion
Konstant forsinkelse offset (millisekunder) Yderligere værdi i millisekunder

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

Gaussisk tilfældig timer i Jmeter

Ensartet tilfældig timer

Ensartet tilfældig timer forsinker hver brugeranmodning i et tilfældigt tidsrum.

Uniform Random Timer i Jmeter

parametre

Attribut Description
Navn Descriptive navn for denne timer, der vises i træet
Maksimum tilfældig forsinkelse Maksimalt tilfældigt antal millisekunder at forsinke.
Konstant forsinkelse offset (millisekunder) Yderligere værdi i millisekunder

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

BeanShell timer

BeanShell Timer kan bruges til generere en forsinkelsestid mellem hver brugeranmodning.

BSF timer

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

JSR223 timer

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

Sådan bruger du konstant timer

I dette eksempel skal du bruge Konstant timer at indstille en fast forsinkelse mellem brugeranmodninger til google.com.

Lad os starte med et simpelt testscript

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

Her er den køreplan for dette praktiske eksempel:

Brug konstant timer i Jmeter

Pre-condition

We genbruge trin 1 og trin 2 i selvstudiet JMeter Test af ydeevne.

Trin 1) Tilføj trådgruppe

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

I Trådgruppekontrolpanelet skal du indtaste Trådegenskaber som følger

Tilføj trådgruppe

Denne indstilling tillader JMeter skabe en brugeranmodning til http://www.google.com in 100 gange

Trin 2) Tilføj JMeter elementer

  • Tilføj HTTP-anmodningsstandard
  • Tilføj HTTP-anmodning

Trin 3) Tilføj konstant timer

Højreklik Trådgruppe -> timer -> Konstant timer

Tilføj konstant timer

Konfiguration af trådforsinkelse på 5000 millisekunder

Tilføj konstant timer

Trin 4) Tilføj visningsresultater i tabel

Vis resultater i tabel viser testresultatet i tabelformat.

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

Tilføj visningsresultater i tabel

Se resultater i tabelvisninger som nedenstående figur

Tilføj visningsresultater i tabel

Trin 5) Kør din test

Når du er klar til at køre en test, skal du klikke Løbet knappen på menulinjen eller korttast Ctrl + R

Dette er resultatet af denne test

Kør testen

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

  • Start tid er 22:05:01.866
  • prøve Tid af prøve 2 er 172 ms
  • Konstant timer: 5000 ms (som konfigureret)
  • End Time af denne prøve er = 22:05:01.866 + 172 + 5000 = 22:05:07.038

Så prøve 3 skulle starte på det tidspunkt 22:05:07.039 (Som vist i ovenstående figur)

forsinkelse af hver prøve er 5000 ms

Hvis du ændrer Constant Timer er nul, vil du se, at resultatet er ændret

Kør testen

Lad analysere Prøve 1

  • Start tid er 22:17:39.141
  • prøve Tid af prøve 2 er 370 ms
  • Konstant timer : 0 ms (som konfigureret)
  • End Time af denne prøve er = 22:17:39.141+ 370 + 0 = 22:17:39.511

Prøve 2 skal starte på det tidspunkt er 22:17:39.512 (vist i ovenstående figur)

Fejlfinding

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

  1. Kontroller, om du opretter forbindelse til internettet via en proxy. Hvis ja, fjern proxyen.
  2. Åbn en ny forekomst af JMeter
  3. Åbne TimerTestPlan.jmx i Jmeter
  4. Double Klik på Trådgruppe -> Vis resultat i tabel
  5. Kør testen