Hvordan bruke JMeter for ytelse & Lastetesting

Innholdsfortegnelse:

Anonim

JMeter Load Testing

JMeter Load Testing er en testprosess utført ved hjelp av et lastetestingsverktøy som heter Apache JMeter, som er en åpen kildekode-applikasjon basert på Java. JMeter for belastningstesting er et viktig verktøy som avgjør om webapplikasjonen som testes kan tilfredsstille høye belastningskrav eller ikke. Det hjelper også med å analysere den totale serveren under tung belastning.

JMeter ytelsestesting

JMeter Performance Testing er testmetode utført ved hjelp av Apache JMeter for å teste ytelsen til et webapplikasjon. JMeter for ytelsestesting hjelper til med å teste både statiske og dynamiske ressurser, hjelper til med å oppdage samtidige brukere på nettstedet og gir en rekke grafiske analyser for ytelsestesting. JMeter ytelsestesting inkluderer belastningstest og stresstest av webapplikasjon.

Apache JMeter testverktøy gir følgende fordeler i ytelsestesting

  • JMeter kan brukes til å teste ytelsen til både statiske ressurser som JavaScript og HTML, samt dynamiske ressurser, for eksempel JSP, Servlets og AJAX.
  • JMeter kan oppdage maksimalt antall samtidige brukere som nettstedet ditt kan håndtere
  • JMeter tilbyr en rekke grafiske analyser av resultatrapporter.

JMeter Performance Testing inkluderer:

  • Load Testing: Modellering den forventede bruken ved å simulere flere brukere tilgang til web-tjenester samtidig.
  • Stresstesting : Hver webserver har maksimal lastekapasitet. Når belastningen overskrider grensen, begynner webserveren å svare sakte og produsere feil. Hensikten med stresstestingen er å finne den maksimale belastningen webserveren kan håndtere.

Figuren nedenfor viser hvordan JMeter load Testing simulerer tung belastning:

Lag en ytelsestestplan i JMeter

I denne veiledningen gjør vi en ytelsesanalyse av Google.com for 1000 brukere

Før vi tester ytelsen til målwebapplikasjonen, bør vi bestemme-

  • Normal belastning : Gjennomsnittlig antall brukere som besøker nettstedet ditt
  • Tung belastning : Maksimalt antall brukere besøker nettstedet ditt
  • Hva er målet ditt i denne testen?

Her er veikartet for dette praktiske eksemplet

Trinn 1) Legg til trådgruppe

  1. Start JMeter
  2. Velg Testplan på treet
  3. Legg til trådgruppe

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

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

  • Antall tråder : 100 (Antall brukere kobler seg til målnettstedet: 100)
  • Loop Count : 10 (Antall tid til å utføre testing)
  • Opprullingsperiode : 100

Trådtellingen og løkketallene er forskjellige.

Ramp-up periode forteller JMeter hvor lenge å utsette før du starter neste bruker. For eksempel, hvis vi har 100 brukere og en oppstartperiode på 100 sekunder, vil forsinkelsen mellom startende brukere være 1 sekund (100 sekunder / 100 brukere)

Trinn 2) Legge til JMeter-elementer

Nå bestemmer vi hvilke JMeter-elementer som er i denne testen. Elementene er

  • HTTP-forespørsel Standard

Dette elementet kan legges til ved å høyreklikke på trådgruppen og velge: Legg til -> Konfig.element -> Standardinnstillinger for HTTP-forespørsel.

I kontrollpanelet for HTTP-forespørsel angir du nettstedsnavnet som testes (http://www.google.com)

  • HTTP-forespørsel

Høyreklikk på trådgruppen og velg: Legg til -> Sampler -> HTTP-forespørsel .

I HTTP-forespørsel-kontrollpanel indikerer banen feltet hvilken URL-forespørsel du vil sende til Google-serveren.

For eksempel hvis du skriver inn "kalender" i banen. JMeter oppretter URL-forespørselen http://www.google.com/calendar til Google-serveren

Hvis du holder feltet Sti tomt, vil JMeter opprette URL-forespørselen http://www.google.com til Google-serveren.

I denne testen holder du stien-feltet tomt for å få JMeter til å lage URL-forespørselen http://www.google.com til Google-serveren.

Trinn 3) Legge til grafresultat

JMeter kan vise testresultatet i grafformat.

Høyreklikk Testplan, Legg til -> Lytter -> Grafresultater

Trinn 4) Kjør test og få testresultatet

Trykk på Run- knappen (Ctrl + R) på verktøylinjen for å starte programvaretestprosessen. Du vil se testresultatet på Graf i sanntid.

Bildet nedenfor viser en graf over en testplan, der vi simulerte 100 brukere som fikk tilgang til nettstedet www.google.com.

Nederst på bildet er det følgende statistikk, representert i farger:

  • Svart: Totalt antall nåværende prøver sendt.
  • Blå: Gjeldende gjennomsnitt av alle sendte prøver.
  • Rødt: Gjeldende standardavvik.
  • Grønn: Gjennomstrømningshastighet som representerer antall forespørsler per minutt serveren håndterte

La oss analysere ytelsen til Google-serveren nedenfor.

For å analysere ytelsen til webserveren som testes, bør du fokusere på to parametere

  • Gjennomstrømning
  • Avvik

Den Gjennomstrømning er den viktigste parameteren. Det representerer serverens evne til å håndtere tung belastning. Jo høyere gjennomstrømningen er, desto bedre er serverytelsen.

I denne testen er gjennomstrømningen til Google-serveren 1 491,193 / minutt. Det betyr at Google-serveren kan håndtere 1491.193 forespørsler per minutt. Denne verdien er ganske høy, så vi kan konkludere med at Google-serveren har god ytelse

Den avvik vises i rødt - det viser avvik fra gjennomsnittet. Jo mindre jo bedre .

La oss sammenligne ytelsen til Google-serveren med andre webservere. Dette er resultatresultatresultatet til nettstedet http://www.yahoo.com/ (Du kan velge andre nettsteder)

Gjennomstrømningen til et nettsted som testes http://www.yahoo.com er 867.326 / minutter. Det betyr at denne serveren håndterer 867.326 forespørsler per minutt, lavere enn Google.

Avviket er 2689, mye høyere enn Google (577). Så vi kan bestemme ytelsen til dette nettstedet er mindre enn en Google-server.

MERKNAD: Verdiene ovenfor avhenger av flere faktorer som gjeldende serverbelastning hos Google, Internett-hastighet, CPU-kraft osv. Derfor er det svært lite sannsynlig at du får de samme resultatene som ovenfor. Så ikke få panikk!

Feilsøking:

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

  1. Sjekk om du kobler til internett via en proxy. Hvis ja, fjern fullmakten.
  2. Åpne en ny forekomst av Jmeter
  3. Åpne PerformanceTestPlan.jmx i Jmeter
  4. Dobbeltklikk på trådgruppen -> Grafresultat
  5. Kjør testen