Kas ir loģiskais kontrolieris?
Loģiskie kontrolieri ļauj noteikt pavedienā apstrādes pieprasījuma secību. Tas ļauj jums kontrolēt "kad" nosūtīt lietotāja pieprasījumu uz tīmekļa serveri. Piemēram, lai nejauši nosūtītu HTTP pieprasījumus serverim, varat izmantot nejaušos kontrollerus
Loģiskie kontrolieri nosaka secību , kādā tiek izpildīts lietotāja pieprasījums.
Daži parasti izmantotie loģiskie kontrolieri ir šādi:
Ierakstīšanas kontrolieris:
JMeter var ierakstīt testēšanas darbības; ierakstīšanas kontrolieris ir vietturis, lai saglabātu šīs ierakstīšanas darbības.
Vienkāršs kontrolieris:
Vienkāršais kontrolieris ir tikai konteiners lietotāja pieprasījumam.
Cilpas kontrolieris:
Loop Controller liek lietotāja pieprasījumam darboties noteiktu skaitu reižu vai palaist uz visiem laikiem, kā parādīts attēlā:
Izlases kontrolieris:
Random Controller liek visiem lietotāju pieprasījumiem darboties nejaušā secībā katrā cilpas periodā.
Piemēram, jums ir 3 lietotāju pieprasījumi vietnei http://www.google.com šādā secībā:
- HTTP pieprasījums
- FTP pieprasījums
- JDBC pieprasījums
Šie 3 pieprasījumi jāizpilda 5 reizes. Kopā JMeter uz Google serveri nosūtīs 15 lietotāju pieprasījumus.
Ar secīgi kārtībā, pieprasījumi tiek nosūtīti secīgi ir šādā secībā:
HTTP pieprasījums -> FTP pieprasījums -> JDBC pieprasījums
katrai cilpai.
Pēc nejaušības principa pieprasījumi tiek nosūtīti nejauši,
FTP pieprasījums -> HTTP pieprasījums-> JDBC pieprasījums
Or
JDBC pieprasījums -> FTP pieprasījums -> HTTP pieprasījums
Katrai cilpai.
Moduļa kontrolieris:
Moduļu kontroliera mērķis ir pievienot modulāciju JMeter.
Vispārējā ideja ir tāda, ka tīmekļa lietojumprogrammas sastāv no nelielām funkcionalitātes vienībām (piemēram, Pieteikšanās, Izveidot kontu, Atteikšanās ...). Šo funkcionalitāti var saglabāt Simple Controller kā "moduļus". Moduļu kontrolieris izvēlēsies, kurš modulis jāpalaiž.
Apsveriet šādu scenāriju -
Jūs vēlaties simulēt:
- 50 lietotāji atsakās ,
- 100 lietotāji piesakās
- 30 lietotāji meklē vietnē www.google.com
Jūs varat izmantot JMeter, lai izveidotu 3 moduļus. Katrs modulis simulē katru lietotāja darbību: pieteikšanās, atteikšanās un meklēšana.
Moduļa kontrolieris izvēlas, kurš modulis jāpalaiž.
Citi svarīgi kontrolieri:
- Interleave Controller: paņem un liek izpildīt vienu no lietotāja pieprasījumiem katrā pavediena cilpā.
- Runtime Controller: kontrolē, cik ilgi tā bērniem ir atļauts darboties.
Piemēram, ja Runtime Controller norādījāt 10 sekundes, JMeter testu veiks 10 sekundes.
- Darījumu kontrolieris: mēra kopējo laiku , kas nepieciešams testa izpildes pabeigšanai
- Iekļaut kontrolieri: ir paredzēts izmantot ārēju testa plānu. Šis kontrolieris ļauj jums izmantot vairākus testa plānus programmā JMeter. Skatīt sīkāk sadaļā JMeter Performance Testing.
Loop Controller piemērs
Šajā sadaļā ir sniegta detalizēta instrukcija, kā pievienot pašreizējam veiktspējas pārbaudes plānam Loop Controller komplektu.
Cilpas kontrolieris liek izlasītājiem darboties noteiktu skaitu reižu papildus cilpas vērtībai, kuru norādījāt pavedienu grupai. Piemēram, ja jūs
- Pievienojiet vienu HTTP pieprasījumu cilpas kontrolierim ar cilpu skaitu 50
- Konfigurējiet pavedienu grupas cilpu skaitu līdz 2
- Tad JMeter kopā nosūtīs 50 * 2 = 100 HTTP pieprasījumus.
Šis ir šī piemēra ceļvedis :
1. darbība. Vītņu grupas konfigurēšana
Mēs atkārtoti izmantojam 1., 2. darbību JMeter veiktspējas testēšanas apmācībā.
-
Pievienot pavedienu grupu
Ar peles labo pogu noklikšķiniet uz testa plāna un pievienojiet jaunu pavedienu grupu: Pievienot -> Vītnes (lietotāji) -> Vītņu grupa
Bet Thread Group vadības panelī ievadiet Thread Properties šādi:
Tas veiks vienu lietotāja pieprasījumu tīmekļa serverim google.com un palaidīs to 2 reizes.
-
Pievienojiet JMeter elementus
Pievienojiet HTTP pieprasījuma noklusējumu vietnei www.google.com.
-
Pievienojot cilpas kontrolieri
Ar peles labo pogu noklikšķiniet uz Thread Group -> Logic Controller -> Loop Controller
2. solis) Loop Controller konfigurēšana
Pievienojiet vērtību Loop Count laukam 50, kā parādīts zemāk. Tas liks vienam lietotāja pieprasījumam tīmekļa serverim google.com to izpildīt 50 reizes, papildus cilnes vērtībai = 2, kuru norādījāt iepriekšējai pavedienu grupai. Tātad JMeter kopā nosūtīs 2 * 50 = 100 HTTP pieprasījumus.
Ar peles labo pogu noklikšķiniet uz Loop Controller, Add -> Sampler -> HTTP pieprasījums
3. solis. Pievienojiet skata rezultātus tabulā
Mēs atkārtoti izmantojam taimera 2. darbību, lai tabulā pievienotu skata rezultātus
Tātad testa plāns ir parādīts zemāk redzamajā attēlā
4. solis. Palaidiet testu
Tagad atgriezieties Skatīt rezultātus tabulā, noklikšķiniet uz pogas Sākt izvēlnes joslā (Ctrl + R), lai palaistu testu
Kā parādīts zemāk redzamajā attēlā, JMeter simulē vienu lietotāja pieprasījumu, kas tiek nosūtīts 100 reizes, uz tīmekļa serveri http://www.google.com/. Tests tiek apturēts pēc lietotāja pieprasījuma nosūtīšanas 100 reizes.
Traucējummeklēšana:
- Ja rodas problēma, izpildot iepriekš minēto scenāriju ... rīkojieties šādi
- Pārbaudiet, vai izveidojat savienojumu ar internetu, izmantojot starpniekserveri. Ja jā, noņemiet starpniekserveri.
- Atveriet jaunu Jmeter gadījumu
- Jmeter atveriet ControllerTestPlan.jmx
- Noklikšķiniet uz Thread Group -> Skatīt rezultātu tabulā
- Palaidiet testu