Controllere i JMeter: Loop, Simple, Transaction, Module, Random
Hvad er den logiske controller?
Logik-controllere lader dig definere rรฆkkefรธlgen af โโbehandlingsanmodningen i en trรฅd. Det lader dig styre "hvornรฅr" du vil sende en brugeranmodning til en webserver. For eksempel kan du bruge tilfรฆldige controllere til at sende HTTP-anmodninger til serveren tilfรฆldigt
Logiske controllere bestemmer rรฆkkefรธlgen hvor brugeranmodningen udfรธres.
Nogle almindeligt anvendte Logic-controllere er nedenfor:
Optagelsescontroller
JMeter kan optage dine Test trin; en optagecontroller er en pladsholder for at gemme disse optagelsestrin.
Simpel controller
Simple Controller er bare en container for brugerens anmodning.
Loop -controller
Loop Controller fรฅr brugeranmodningen til at kรธre et bestemt antal gange eller lรธbe evigt som vist pรฅ figuren:
Tilfรฆldig controller
Random Controller fรฅr alle brugeranmodninger til at kรธre ind det tilfรฆldige rรฆkkefรธlge i hver slรธjfeperiode.
For eksempel har du 3 brugeranmodninger til hjemmesiden http://www.google.com i fรธlgende rรฆkkefรธlge:
- HTTP-anmodning
- FTP anmodning
- JDBC anmodning
Disse 3 anmodninger skal kรธre 5 gange. I alt 15 brugeranmodninger vil blive sendt til Googles server af JMeter.
In sekventiel bestilling sendes anmodninger sekventielt i fรธlgende rรฆkkefรธlge:
HTTP-anmodning ->FTP-anmodning->JDBC-anmodning
for hver slรธjfe.
In tilfรฆldig ordre, anmodninger sendes som tilfรฆldigt,
FTP-anmodning ->HTTP-anmodning->JDBC-anmodning
Or
JDBC-anmodning ->FTP-anmodning->HTTP-anmodning
For hver slรธjfe.
Modul controller
Mรฅlet med Module Controller er at tilfรธje modularitet til JMeter.
Den generelle idรฉ er, at webapplikationer bestรฅr af smรฅ enheder af funktionalitet (f.eks. Logon, Create Account, Logoff...). Denne funktionalitet kan gemmes i Simpel controller som "moduler". Modul Controller vil vรฆlge hvilket modul der skal kรธre.
Overvej fรธlgende scenarie -
Du รธnsker at simulere:
- 50 brugere logger ud,
- 100 brugere logger ind
- 30 brugere sรธge www.google.com
Du kan bruge JMeter at oprette 3 moduler. Hvert modul simulerer hver brugeraktivitet: Login, Log ud og Sรธg.
Modulcontrolleren vรฆlger, hvilket modul der skal kรธre.
Andre vigtige controllere
- Indfletter Controller: samler op og laver en af brugeranmodning kรธrt ind hver lรธkke af trรฅden.
- Runtime Controller: kontroller hvor lรฆnge dens bรธrn fรฅr lov at lรธbe.
For eksempel, hvis du har angivet Runtime Controller 10 sekunder, JMeter vil kรธre din test i 10 sekunder.
- transaktion Controller: mรฅler samlet tid taget til slut en testudfรธrelse
- Medtag Controller: er designet til at bruge en ekstern testplan. Denne controller giver dig mulighed for at bruge flere testplaner i JMeter. Se detaljer i JMeter Test af ydeevne.
Eksempel pรฅ slรธjfecontroller
Dette afsnit viser dig trin-for-trin instruktioner til at tilfรธje Loop -controller indstillet til din nuvรฆrende prรฆstationstestplan.
Loop-controlleren fรฅr samplerne til at kรธre som et bestemt antal gange, ud over den loop-vรฆrdi, du har angivet for trรฅdgruppen. Hvis du f.eks
- Tilfรธj en HTTP-anmodning til en loop-controller med et loop-antal pรฅ 50
- Konfigurer trรฅdgruppelรธkketรฆllingen til 2
- Derefter JMeter vil sende i alt 50 * 2 = 100 HTTP-anmodninger.
Dette er den kรธreplan af dette eksempel:
Trin 1) Konfiguration af trรฅdgruppe
We genbruge trin 1, 2 i selvstudiet JMeter Test af ydeevne.
-
Tilfรธj trรฅdgruppe
Hรธjreklik pรฅ Testplan og tilfรธj en ny trรฅdgruppe: Tilfรธj-> Trรฅde (brugere) ->Trรฅdgruppe
Men i trรฅdgruppekontrolpanelet skal du indtaste trรฅdegenskaber som fรธlger:
Det vil gรธre en brugeranmodning til webserveren google.com og kรธr den 2 gange.
-
Tilfรธj JMeter elementer
Tilfรธj HTTP-anmodningsstandard til www.google.com.
-
Tilfรธjelse af loop-controller
Hรธjreklik pรฅ trรฅdgruppe -> Logisk controller -> lรธkkecontroller
Trin 2) Konfiguration af Loop Controller
Tilfรธj vรฆrdi 50 til feltet Loop Count som nedenstรฅende figur. Det vil gรธre en brugeranmodning til webserveren google.com Kรธr det 50 gange, ud over slรธjfevรฆrdien =2, du specificerede for trรฅdgruppen ovenfor. Altsรฅ JMeter vil sende i alt 2 * 50 = 100 HTTP-anmodninger.
Hรธjreklik pรฅ Loop Controller, Tilfรธj -> Sampler -> HTTP-anmodning
Trin 3) Tilfรธj visningsresultater i tabel
Vi genbruger trin 2 i timer for at tilfรธje Vis resultater i tabel
Sรฅ testplanen er vist i nedenstรฅende figur
Trin 4) Kรธr din test
Returner nu Vis resultater i tabel, klik pรฅ Start-knappen pรฅ menulinjen (Ctrl+R) for at kรธre en test
Som vist i figuren nedenfor, JMeter simulerer en brugeranmodning, som sendes 100 gange, til webserveren http://www.google.com/. Testen stoppes, efter at en brugeranmodning er sendt ind 100 gange.
Fejlfinding
- Hvis du stรฅr over for problemet, mens du kรธrer ovenstรฅende scenarie ... gรธr fรธlgende
- Kontroller, om du opretter forbindelse til internettet via en proxy. Hvis ja, fjern proxyen.
- ร bn en ny forekomst af Jmeter
- ร bne ControllerTestPlan.jmx i Jmeter
- Klik pรฅ Trรฅdgruppe -> Vis resultat i tabel
- Kรธr testen










.png)


.png)


