Jmeter-tidtakere: Konstant, Gaussisk tilfeldig, Uniform [Eksempel]

Hva er timere?

Som standard JMeter sender forespørselen uten å ta en pause mellom hver forespørsel. I så fall JMeter kunne overvelde testserveren din ved å gjøre for mange forespørsler på kort tid.

Tenk deg at du sender tusener forespørsel til en webserver som testes om noen få sekunder. Dette er hva som skjer!

Tidtakere inn JMeter

Tidtakere tillater JMeter til forsinkelse mellom hver forespørsel som en tråd gjør. En timer kan løse serveren overbelastning problem.

Også i det virkelige liv kommer besøkende ikke til et nettsted på samme tid, men med forskjellige tidsintervaller. Så Timer vil hjelpe etterligne sanntidsatferden.

Følgende er noen felles typer timer i JMeter

Konstant timer

Konstant timer forsinker hver brukerforespørsel for samme mengde tid.

Konstant timer i Jmeter

Gaussisk tilfeldig timer

Gaussian tilfeldig timer forsinker hver brukerforespørsel for en tilfeldig mengde tid.

Gaussisk tilfeldig timer i Jmeter

Parametre

Egenskap Tekniske beskrivelser
Navn Descriptnavnet på denne tidtakeren som vises i treet
Avvik (millisekunder) A parameter av Gaussisk distribusjonsfunksjon
Konstant forsinkelsesoffset (millisekunder) Ytterligere verdi i millisekunder

Så den totale forsinkelsen er beskrevet som figuren nedenfor:

Gaussisk tilfeldig timer i Jmeter

Uniform tilfeldig timer

Ensartet tilfeldig timer forsinker hver brukerforespørsel i en tilfeldig tid.

Uniform Random Timer i Jmeter

Parametre

Egenskap Tekniske beskrivelser
Navn Descriptnavnet på denne tidtakeren som vises i treet
Maksimum tilfeldig forsinkelse Maksimalt tilfeldig antall millisekunder å forsinke.
Konstant forsinkelsesoffset (millisekunder) Ytterligere verdi i millisekunder

Den totale forsinkelsen er summen av tilfeldig verdi og offsetverdi.

BeanShell Timer

Ocuco BeanShell Timer kan brukes til generere en forsinkelsestid mellom hver brukerforespørsel.

BSF timer

BSF-timeren kan brukes til å generere en forsinkelse mellom hver brukerforespørsel ved å bruke en BSF skriptspråk.

JSR223 timer

JSR223-timeren kan brukes til å generere en forsinkelse mellom hver brukerforespørsel ved å bruke en JSR223 skriptspråk

Hvordan bruke konstant timer

I dette eksemplet skal du bruke Konstant timer å sette en fast forsinkelse mellom brukerforespørsler til google.com.

La oss starte med et enkelt testskript

  1. JMeter skaper en brukerforespørsel til http://www.google.com 100 ganger
  2. Utsette mellom hver brukerforespørsel er 5000 ms

Her er det veikart for dette praktiske eksempelet:

Bruk konstant timer i Jmeter

Pre-conditioning

We gjenbruk trinn 1 og trinn 2 i opplæringen JMeter Ytelsestesting.

Trinn 1) Legg til trådgruppe

Høyreklikk på Testplan og legg til en ny trådgruppe: Legg til-> Tråder (brukere) ->Gjengegruppe

I trådgruppekontrollpanelet skriver du inn trådegenskaper som følger

Legg til trådgruppe

Denne innstillingen lar JMeter skape en brukerforespørsel til http://www.google.com in 100 ganger

Trinn 2) Legg til JMeter elementer

  • Legg til standard for HTTP-forespørsel
  • Legg til HTTP-forespørsel

Trinn 3) Legg til konstant timer

Høyreklikk Gjengegruppe -> Tidstaker -> Konstant timer

Legg til konstant timer

Konfigurerer trådforsinkelse på 5000 millisekunder

Legg til konstant timer

Trinn 4) Legg til visningsresultater i tabell

Vis resultater i tabell viser testresultatet i tabellformat.

Høyreklikk Legg til -> lytteren ->Vis resultat i tabell

Legg til visningsresultater i tabell

Vis resultater i tabellvisninger som figuren nedenfor

Legg til visningsresultater i tabell

Trinn 5) Kjør testen

Når du er klar til å kjøre en test, klikker du løpet knappen på menylinjen, eller korttast Ctrl + R

Dette er resultatet av denne testen

Kjør testen

For eksempel, i figuren ovenfor, la analysere Eksempel 2

  • Starttid er 22:05:01.866
  • Prøve Tid av prøve 2 er 172 ms
  • Konstant timer: 5000 ms (som konfigurert)
  • Sluttid av denne prøven er = 22:05:01.866 + 172 + 5000 = 22:05:07.038

Så prøve 3 bør starte på den tiden er 22:05:07.039 (Som vist i figuren ovenfor)

Ocuco forsinkelse av hver prøve er 5000 ms

Hvis du endrer Constant Timer er null, vil du se at resultatet er endret

Kjør testen

La analysere Eksempel 1

  • Starttid er 22:17:39.141
  • Prøve Tid av prøve 2 er 370 ms
  • Konstant timer : 0 ms (som konfigurert)
  • Sluttid av denne prøven er = 22:17:39.141+ 370 + 0 = 22:17:39.511

Eksempel 2 bør starte på den tiden er 22:17:39.512 (vist i figuren ovenfor)

Feilsøking

Hvis du møter problemet mens du kjører scenariet ovenfor ... gjør følgende

  1. Sjekk om du kobler til internett via en proxy. Hvis ja, fjern proxyen.
  2. Åpne en ny forekomst av JMeter
  3. Åpne TimerTestPlan.jmx i Jmeter
  4. Double Klikk på Trådgruppe -> Vis resultat i tabell
  5. Kjør testen