jmeter processors controllers
Visió general dels pre-processadors i controladors a JMeter (Part-III):
=> Seguiu aquí una sèrie completa de tutorials gratuïts sobre JMeter
Aquest article guiarà els usuaris a l’ús de preprocessadors, postprocessadors i controladors a JMeter. Els controladors són molt útils ja que configuren els vostres escenaris de prova.
És possible que vulgueu provar diferents escenaris en què vulgueu configurar la vostra pròpia seqüència d’enviament d’una sol·licitud a un servidor per supervisar el temps de resposta i altres factors de rendiment.
Què aprendreu:
- Preprocessadors
- Paràmetres d'usuari
- Temps d’espera de mostra
- Controladors
- Exemple en temps real
- Plantilla de gravació de JMeter
- Conclusió
- Lectura recomanada
Preprocessadors
Aquests són els elements que s'executen abans que s'executi un mostreig. Podeu adjuntar el processador previ amb el mostreig per al qual vulgueu fer alguns canvis a la sol·licitud.
El cas més senzill podria ser afegir un preprocessador de 'Sample Timeout' amb una sol·licitud HTTP perquè aquesta sol·licitud s'executés només durant un període de temps definit. També s'assegura que aquesta modificació es faci només per al Sampler pare.
A continuació es mostren alguns dels pre-processadors utilitzats a JMeter:
- Preprocessador de Bean Shell
- Analitzador d’enllaços HTML
- Reescriptura d'URL HTTP
- Preprocessador JDBC
- Temps d’espera de mostra
- Paràmetres d'usuari
A continuació, s’expliquen els exemples més utilitzats. Potser necessiteu o no tots els vostres projectes. Intenteu identificar els escenaris relacionats amb el vostre projecte i implementar els que us ajudaran a cobrir escenaris de rendiment en temps real.
Paràmetres d'usuari
Els paràmetres d'usuari s'utilitzen per definir valors per a les variables abans que s'utilitzin als Samplers. Quan JMeter executa aquest element de pre-processador, emmagatzema els valors a les variables a les quals poden fer referència qualsevol Samplers del mateix grup de fils.
programes d'anime gratuïts per veure en línia
Si teniu més fils que el nombre d'usuaris a 'Paràmetres d'usuari', els fils addicionals tornaran a repetir els valors.
Per exemple, teniu 5 usuaris al vostre grup de fils, però només 3 al pre-processador, i després el vostre 4thi un 5ths'utilitzarà el fil param1 i param2 .
Temps d’espera de mostra
Aquest pre-processador s'utilitza per definir la durada del temps d'espera per a les sol·licituds.
Per exemple, si heu posat un temps de mostra de 400 mil·lisegons, totes les sol·licituds que triguen> 400 tindran una resposta fallida. Vegeu a continuació les captures de pantalla.
Controladors
Els controladors són molt importants per construir un pla de prova JMeter en temps real. Defineix la seqüència en què s’envien les sol·licituds al servidor.
Per exemple, Si voleu provar una aplicació web en què vulgueu iniciar la sessió una vegada i fer cerques, la selecció d’elements sol·licita anar d’un en un per a totes les iteracions. Els controladors ho fan possible mitjançant la gestió del flux de sol·licituds al servidor que s’està provant.
A continuació es mostren els controladors més utilitzats a JMeter
- Controlador senzill
- Controlador de mòduls
- Un cop únic controlador
- Controlador intercalat
- Controlador de bucle
- Si controlador
- Per a cada controlador
- Controlador de gravació, etc.,
Controlador senzill
El controlador senzill no realitza cap funció específica. És només una mena de contenidor on podeu guardar les vostres sol·licituds similars per fer que el vostre pla de prova sigui fàcilment comprensible.
Controlador de bucle
Si voleu que una sol·licitud específica executi més iteracions de les que s’especifiquen al grup de fils, podeu posar-les a Loop Controller i introduir el recompte de bucles a la configuració del controlador.
Exemple: Si teniu un grup de fils amb 1 usuari i 3 iteracions, totes les vostres sol·licituds d’aquest grup s’executaran 3 vegades. Ara, si teniu dos Sampler HTTP sota un controlador de bucle amb recompte de bucles 2, tots dos Samplers funcionarien 1 * 3 * 2 = 6 vegades.
Consulteu les captures de pantalla següents que ho expliquen més a fons
Un cop únic controlador
Aquest controlador s'utilitza quan només voleu executar una sol·licitud específica una vegada, fins i tot si teniu diversos fils al grup de fils. L'exemple més senzill que es pot considerar és 'Obtenir una pàgina d'inici d'un lloc web' o 'Iniciar sessió en una aplicació web'. L'escenari en temps real vol que només es produeixi una vegada i altres peticions, com ara fer cerques o editar o suprimir alguna cosa, passin diverses vegades.
La sol·licitud que s'ha d'executar només una vegada es pot col·locar a Controlador únic. Consulteu la captura de pantalla següent per obtenir la vostra referència. Una vegada que només la configuració del controlador passa per alt la configuració del grup de fils primaris.
Controlador de gravació
Igual que Simple Controller, Recording Controller no modifica cap seqüència de sol·licituds que s’envien al servidor. S'utilitza amb HTTP (S) Script Recorder. Totes les sol·licituds que es registren amb aquest element que no és de prova es desen al controlador de gravació.
Cal especificar el controlador de destinació per desar les sol·licituds gravades al servidor.
El controlador de gravació i el gravador de seqüències HTTP (s) apareixen quan els verificadors no tenen la informació sobre els URL i els paràmetres de les sol·licituds. Simplement poden enregistrar i capturar totes les sol·licituds que arriben als seus servidors. Això funciona tant per a mòbils com per a projectes web.
Controlador de rendiment
Aquest controlador també s'utilitza per controlar el flux d'execució. Com es pot veure a la retallada següent, aquest controlador es divideix en dues parts:
Percentatge d'execució - Aquesta selecció farà que Jmeter executi només un percentatge determinat de les iteracions totals dels mostrejadors situats sota aquest controlador. També podeu marcar la casella de selecció 'Per usuari' per controlar-ho a nivell d'usuari.
Per exemple, El grup de fils està configurat per tenir 10 usuaris i el recompte de bucles és de 5. Per tant, les iteracions totals són 50. Si% execució s'estableix al 50%, tots els mostrejadors del controlador de rendiment només faran 25 iteracions (50% de 50).
Execucions totals: Això permet als usuaris especificar el nombre d'iteracions directament per als mostrejadors continguts en aquest controlador.
Controlador intercalat
Aquest controlador us permet augmentar l'abast de les proves de rendiment modificant la seqüència de diverses maneres, de manera que pugueu provar la càrrega al servidor quan les aplicacions col·loquen a la sol·licitud amb diferents seqüències. Interleave Controller fa seleccions alternatives amb els mostrejadors que hi ha a sota.
En cas que hi hagi altres controladors com Simple Controller sota aquest bloc, el controlador intercalat dóna el privilegi de seleccionar un mostrejador cadascun d’un contenidor per a cada iteració. Per explicar-ho més a fons, tingueu en compte el següent pla de proves.
Per tant, Jmeter iterarà alternativament entre els controladors per a cada iteració. Per tant, la seqüència s’esmentarà a continuació
Request1 -> Request3 -> Request 5 - Request2 -> Request4 -> Request6
Consulteu els resultats JMeter següents amb nombre de fils = 2 i recompte de bucles = 2.
preguntes d’entrevistes sobre serveis web de descans java
A l'exemple anterior, Jmeter s'entrellaça amb el següent bucle / iteració. Hi ha configuracions a Interleave Controller que poden fer que JMeter enviï sol·licituds alternatives amb cada fil nou.
Consulteu els resultats a continuació. Això és útil en situacions en què voleu que els servidors de càrrega seqüencial o simultània tinguin la seqüència diferent de la sol·licitud des de la mateixa màquina.
Controlador aleatori
Funciona gairebé com un controlador Interleave, però no selecciona els mostrejadors en ordre. Simplement selecciona els controladors secundaris i els mostrejadors que hi ha al seu interior de forma aleatòria.
Si controlador
Si el controlador funciona de manera similar, es tracta una expressió IF en qualsevol llenguatge de programació. La condició es valida primer i després s’executen els components d’aquest contenidor si la condició és TRUE, en cas contrari, s’executaran els elements externs al controlador IF.
Exemple : Continuant amb un dels exemples anteriors que incloïen el controlador Interleave, ara un dels dos controladors Interleave s'ha mantingut sota el controlador IF i la condició '$ (COUNT)<10 is added as a condition. Variable COUNT is defined in config element “User Defined Variables” and is given a value equal to 11. Configuration is described below
Definició i assignació d'un valor a COUNT variable.
Condició definidora a Si controlador configuració. Jmeter validarà aquesta condició i, si és TRUE, executarà els blocs sota aquest contenidor.
Com es pot veure a continuació del pla de prova, només s'executaran Request3, Request4 i Request5 en cas que SI la condició sigui avaluada com a Fals .
Mentre que els controladors
Aquest controlador executa els components que hi ha a sota fins que la condició es converteixi en falsa.
Per exemple, diguem que tenim una condició mentre que ($ (count)<10), it will execute the child elements until the condition is false. To test this, there should be a counter which gets increment or decrement on each iteration and then condition is evaluated. Config Element “Counter” can be used to serve this purpose.
Configureu l'element de configuració 'Comptador' per començar a 1 i després incrementar-lo a cada iteració. Vegeu a continuació per obtenir més aclariments:
Tocarem la resta de controladors en els nostres tutorials de vídeo.
Exemple en temps real
Considerem un escenari en què l’equip de proves no coneix els URL i els paràmetres de totes les sol·licituds que afecten el servidor que s’està provant. Ara, per carregar la prova del servidor, han de registrar les sol·licituds i, a continuació, modular la càrrega seqüencialment o simultàniament i crear escenaris a partir d’ells per fer les proves de rendiment.
Passos
java copia la matriu 2d en una altra matriu
- Afegiu una plantilla a Jmeter per al controlador de gravació
- Configureu el servidor intermediari al navegador i trieu el mateix port a HTTP (s) Script Recorder
- Anoteu les sol·licituds
- Modifiqueu el pla de prova i augmenteu la càrrega
- Agrupeu les transaccions en conseqüència
- Proveu diferents combinacions de sol·licituds
Plantilla de gravació de JMeter
JMeter també té alguna plantilla predefinida. Seleccioneu l'opció 'Plantilla' al menú Fitxer. Després de seleccionar la plantilla per triar l'opció 'Gravació' a la finestra que s'obre i feu clic a Crea.
Tan bon punt seleccioneu aquesta plantilla de gravació, veureu alguns components que ja s'han afegit al pla de prova.
- Gravador de scripts HTTP a Work Bench
- Default HTTP Request i HTTP Cookie Manager
- Controlador de gravació sota el grup de fils.
Podeu fer la configuració del servidor intermediari al vostre navegador per parlar amb el servidor intermediari JMeter o fer servir CHROME Extension Blazemeter per enregistrar les sol·licituds i exportar el fitxer. jmx a Jmeter. Hi ha moltes altres extensions per gravar l'script i exportar-lo a JMeter. L'eina BADBOY també funciona bé amb Jmeter per gravar visites web i mòbils.
Fer clic a. opció jmx per exportar la sol·licitud enregistrada a Jmeter. Ara des de Jmeter, obriu el fitxer. jmx i vegeu les sol·licituds i els paràmetres associats a cada sol·licitud.
Conclusió
A hores d’ara, se suposa que tots us heu familiaritzat molt amb la lògica bàsica de JMeter, com simula la càrrega, com es juga amb diferents tipus de mostrejadors, com es controla el flux d’execució amb l’ús del controlador i s’utilitzen variables i funcions per executar els bucles a través de les iteracions. Certament, aquest no és el final de la sèrie de tutorials a JMeter.
Hi ha molts tutorials en vídeo a seguir, el que guiarà els provadors amb més mans en diferents escenaris de Jmeter i com es pot utilitzar cada component JMeter de la millor manera.
=> Consulteu la llista completa de tutorials de vídeo de JMeter aquí
Comparteix els teus comentaris o preguntes amb nosaltres.
Lectura recomanada
- Jmeter Controllers Part 1
- Controladors Jmeter Part 2
- Com s'aconsegueix la correlació de JMeter amb l'exemple
- Treballar amb sol·licituds HTTP a JMeter
- Treballar amb sol·licitud FTP a JMeter
- Ús del postprocessador a JMeter (extractor d’expressions regulars)
- Top 5 dels connectors JMeter i com utilitzar-los (amb exemples)
- Temporitzadors JMeter: temporitzador aleatori constant, BeanShell i guassià