data parameterization jmeter using configuration elements
Questo tutorial spiega la parametrizzazione dei dati in JMeter utilizzando gli elementi di configurazione per selezionare i dati dai file invece della configurazione manuale:
Elementi di configurazione di Jmeter sono le variabili che vengono utilizzate successivamente dai campionatori. Le richieste fatte da Samplers possono essere aggiunte o modificate usando gli elementi di configurazione.
JMeter fornisce elementi di configurazione in modo che il comportamento reale del web possa essere riprodotto.
=> Fare clic qui per Completa formazione gratuita su JMeter (20+ video)
Cosa imparerai:
- Tutorial video sulla parametrizzazione dei dati
- Elementi di configurazione di JMeter
- # 1) Configurazione del set di dati CSV
- # 2) Default richiesta FTP
- # 3) DNS Cache Manager
- # 4) Gestore delle autorizzazioni HTTP
- # 5) Gestore cache HTTP
- # 6) HTTP Cookie Manager
- # 7) Default richiesta HTTP
- # 8) HTTP Header Manager
- # 9) Configurazione KeyStore
- # 10) Impostazioni predefinite della richiesta LDAP
- # 11) Valori predefiniti delle richieste estese LDAP
- Domande frequenti sugli elementi di configurazione di JMeter
- Conclusione
Tutorial video sulla parametrizzazione dei dati
Elementi di configurazione di JMeter
Di seguito sono elencati diversi tipi di elementi di configurazione JMeter:
- Configurazione set dati CSV
- Default richiesta FTP
- DNS Cache Manager
- Gestore autorizzazioni HTTP
- HTTP Cache Manager
- HTTP Cookie Manager
- Default richiesta HTTP
- HTTP Header Manager
- Default richiesta Java
- Configurazione connessione JDBC
- Configurazione KeyStore
- Elemento di configurazione dell'accesso
- Impostazioni predefinite della richiesta LDAP
- Valori predefiniti delle richieste estese LDAP
- TCP Sampler Config
- Variabili definite dall'utente
- Variabile casuale
- Counter
- Semplice elemento di configurazione
- MongoDB Source Config (DEPRECATO)
- Configurazione connessione bullone
Esaminiamo alcuni elementi di configurazione di JMeter comunemente usati.
# 1) Configurazione del set di dati CSV
CSV viene utilizzato per leggere le righe da un file e convertirle in variabili. CSV Data Set Config serve allo scopo dell'origine dati che può fornire una grande quantità di dati secondo lo scenario che stai testando.
Nel caso in cui un utente desideri testare applicazioni web per 50 utenti con credenziali diverse, non deve creare 50 script. Ora quello che resta da fare è creare un file con il record utente come (nome utente, password) e caricare questo file in CSV. CSV converte tutte le righe di dati in variabili.
Vediamo un esempio di seguito per capire come i dati possono essere letti dal file CSV e possono essere stampati nella struttura Visualizza risultati.
# 1) Crea un piano di test
#Due) Aggiungi un gruppo di thread con il numero di utenti pari a 1, il periodo di accelerazione di 1 secondo e il conteggio del ciclo pari a 5.
# 3) Aggiungi elemento di configurazione come CSV Data set Config.
- Carica un file CSV con i dati seguenti:
- Fornisci nomi di variabili come nome utente e password con il delimitatore separato da virgole.
- Selezionare Ricicla su EOF come true in modo che il file venga riletto una volta raggiunto EOF.
# 4) Aggiungi campionatore: Debug Sampler.
# 5) Aggiungi ascoltatore: Visualizza albero dei risultati.
# 6) Eseguire il piano di test selezionando il pulsante Start nel menu in alto.
I valori variabili del file CSV vengono stampati
Poiché il numero di thread è stato scelto come 5 e il file CSV ha dati fino a sole 3 righe, rilegge nuovamente il file e stampa i valori a partire da 1 per 4thcampionatore.
Di seguito la descrizione di ogni campo:
Configura l'origine dati CSV
Nome del file : Nome del file che verrà letto e convertito in variabili. L'opzione Sfoglia per caricare il file viene fornita con questo campo.
Per specificare il percorso del file, puoi inserire direttamente il nome del file se il tuo CSV è nella cartella BIN della directory JMETER, altrimenti specifica il percorso completo del tuo sistema.
Codifica file: Per leggere il file, è necessario selezionare la codifica da utilizzare dal menu a discesa.
La codifica dei file ha le seguenti opzioni disponibili:
Se non è selezionata alcuna opzione, verrà utilizzata l'impostazione predefinita della piattaforma. Questo non è un campo obbligatorio.
Nome variabile : L'elenco delle variabili viene fornito qui e deve essere separato con il carattere delimitatore. Se non viene fornito nulla in questo campo, la prima riga del file viene letta e considerata come un nome di colonna.
Usa la prima riga come nome della variabile : Se il nome della variabile è vuoto, la prima riga dovrebbe avere intestazioni. Nel caso in cui il nome della variabile non sia vuoto, verrà utilizzata la prima riga del file CSV.
Delimitatore: I dati nel file possono essere separati utilizzando Delimiter.
Consenti dati quotati: Controlla se i dati del file CSV devono essere citati o meno. L'utente può selezionare l'opzione come Vero / Falso dal menu a discesa.
Ricicla su EOF: Rappresenta se il file deve essere riletto quando raggiunge la fine. EOF sta per End of the File. Per impostazione predefinita, il valore selezionato è True.
Interrompere il thread su EOF? Chiede se la rilettura debba essere interrotta una volta raggiunta l'EOF o debba continuare. Per impostazione predefinita, il valore selezionato è falso.
Modalità di condivisione:
- Tutti i thread: Il file è condiviso con tutti i thread.
- Gruppo thread corrente: Ogni file viene aperto per ogni gruppo di thread.
- Discussione attuale: Il file viene aperto per ogni thread.
- Identificare: L'ID comune viene utilizzato per condividere il file tra più di un gruppo.
# 2) Default richiesta FTP
JMeter supporta anche il protocollo FTP. Lo script può essere eseguito utilizzando FTP, FTPS e SFTP in JMeter.
Usa impostazioni predefinite richieste FTP:
- Crea un piano di test.
- Aggiungi gruppo thread.
- Aggiungere l'elemento di configurazione 'Default richiesta FTP'.
- Aggiungi campionatore: richiesta FTP.
- Aggiungi listener: visualizza i risultati nella tabella.
Output visualizzato in Visualizza risultati in tabella:
I dettagli di seguito aiuteranno a saperne di più sui campi in FTP predefinito:
- Nome o IP del server : Il nome o l'IP del server FTP deve essere fornito qui. I dettagli forniti si riferiscono al server in cui verrà posizionato il file o può essere prelevato da lì.
- Numero di porta: È del Server FTP . Il numero di porta predefinito utilizzato è 21.
- File remoto: Quando il file deve essere dichiarato globalmente, in questo campo deve essere fornito l'unico percorso per il file sul server FTP, altrimenti può essere lasciato vuoto.
- File locale: Come per il file remoto: il campo può essere lasciato vuoto, è necessario fornire un percorso per il server locale quando il file deve essere dichiarato globalmente.
- Contenuto del file locale: Il contenuto del file di origine può essere fornito qui che può essere utilizzato al momento del caricamento sul server.
- Ottieni (RETR): File da scaricare dal server FTP.
- Metti (STOR): Per caricare il file sul server FTP
- Usa la modalità binaria: Questa modalità dovrebbe essere deselezionata per i file di testo, per tutti gli altri file dovrebbero essere selezionate le opzioni binarie.
- Salva file in risposta: La selezione di questa opzione indica che l'output verrà archiviato come dati di risposta FTP.
# 3) DNS Cache Manager
DNS Cache Manager può essere utilizzato direttamente in Test Plan o gruppo di thread .
Gestore degli elementi della cache DNS aiuta a testare le applicazioni per gli scenari come i servizi non vengono interrotti a causa del fallimento dell'istanza o per qualsiasi altro motivo. JMeter utilizza la cache predefinita come cache DNS JVM.
JMeter invia la richiesta a Load Balancer che divide ulteriormente le richieste a più applicazioni, ad esempio tre applicazioni sono sotto test. A volte ciò che accade è che la richiesta va a un solo AUT, la ragione di ciò è identificata come cache DNS a livello di JVM.
Leggi anche = >> Come svuotare la cache DNS
DNS cache Manager aiuta a risolvere questo problema nel modo seguente:
- Aggiungi il gestore della cache DNS nel piano di test e seleziona l'opzione ' Utilizza un resolver DNS personalizzato ' e fornire il nome host o gli indirizzi IP ed eseguire il test. Colpirà entrambi gli indirizzi IP e non uno.
- Durante l'utilizzo di una richiesta HTTP selezionare sempre Httpclient4 .
- DNS Cache Manager deve essere utilizzato in Test Plan o un elemento del gruppo di thread.
Descrizione del campo:
- Cancella cache ogni iterazione: La selezione di questa opzione cancella la cache DNS di ogni thread una volta avviato un nuovo ciclo.
- Risolutore DNS del sistema utente: Se l'utente desidera utilizzare un risolutore DNS di sistema.
- Nome host o indirizzo IP: Dettagli dei server DNS da utilizzare.
- Host e nome host o indirizzo IP: Host statico e nome host o indirizzo IP vengono mappati.
# 4) Gestore delle autorizzazioni HTTP
Gestore autorizzazioni HTTP ci consente di fornire login utente per le pagine dell'applicazione web che sono limitate utilizzando l'autenticazione del server. Mostra la finestra di dialogo di accesso se l'utente tenta di connettersi alla pagina con restrizioni.
qa vs qc nei test del software
Cancella autenticazione su ogni iterazione: Se questa opzione è selezionata, l'autenticazione ad ogni iterazione verrà eseguita indipendentemente dall'autenticazione eseguita o meno nel gruppo di thread precedente.
URL di base: URL che corrisponde a uno o più URL HTTP.
Nome utente : Nome utente per l'autorizzazione.
Parola d'ordine : Password per il nome utente sopra.
Dominio : Dominio per NTLM.
Regno : Regno per NTLM.
Meccanismo : Quale meccanismo di autenticazione da eseguire deve essere fornito.
Facciamo un esempio per capire lo stesso.
Prova ad accedere al sito con l'URL: https://httpbin.org/basic-auth/user/passwd .Mostrerà una finestra di autenticazione.
In caso di nome utente o password errati o se l'elemento di configurazione non è abilitato, verrà restituito Codice di risposta -401
E nel caso per i dettagli corretti e se l'elemento di configurazione è abilitato, tornerà Codice di risposta -200
# 5) HTTP Cache Manager
HTTP Cache Manager viene utilizzato per salvare tutti i file statici scaricati quando l'esecuzione è in corso. Lo fa solo se è selezionata l'opzione 'Recupera tutte le risorse incorporate'. E non salverà quelli già salvati fino a quando non verranno apportate modifiche.
Cancella cache in ogni iterazione:
Usa la configurazione del gruppo di thread per controllare la cancellazione della cache:
Usa cache- Control / Expires header durante l'elaborazione GET richieste. Selezionando questa opzione, il controllo / scadenza della cache verrà verificato secondo l'ora corrente.
Numero massimo di elementi nella cache: Per impostazione predefinita, il valore è 5000 per utente. Tutta la cache viene salvata nella RAM. Nel caso in cui l'utente inserisca un valore superiore a 5000, il server può generare un'eccezione 'Fuori dalla memoria ' anche.
Vediamo come si comporta quando usiamo l'opzione cache-control / expire header e quando non la usiamo.
Ora seleziona la terza opzione e riesegui il piano di test:
La selezione dell'opzione ha ridotto il tempo di campionamento e la latenza.
# 6) HTTP Cookie Manager
HTTP Cookie Manager ha la funzione che se l'utente ha una richiesta HTTP e una risposta ha un cookie, il gestore dei cookie memorizza quel cookie e lo utilizzerà come riferimento futuro per quel sito specifico.
Supponiamo che browser Edge, Firefox e Chrome vengano utilizzati per navigare in un sito Web. Quando l'utente accede con nome utente e password, viene memorizzato nel sistema come cookie. La prossima volta che l'utente visita lo stesso sito web non ha bisogno di inserire dettagli come nome utente e password poiché sono già stati memorizzati nel sistema come cookie.
Cancella i cookie a ogni iterazione : Ad ogni iterazione, cioè quando il ciclo del thread viene eseguito una volta, i cookie basati sul server verranno cancellati.
Facciamo un esempio per capire:
- Aggiungi un gruppo di thread al piano di test con il conteggio dei cicli 3
- Aggiungi HTTP Cookie Manager come elemento di configurazione nel gruppo di thread
- Aggiungi richiesta HTTP in cui fornire il nome del server e il percorso
- Aggiungi ascoltatore ' Visualizza albero dei risultati 'E osserva l'output:
In base ai risultati di cui sopra, possiamo vedere che nella prima richiesta di iterazione non sono presenti cookie mentre tutte le altre richieste hanno dati sui cookie.
Ora aggiungi i dettagli nell'elemento di configurazione del gestore dei cookie come mostrato nell'immagine sottostante e osserva il risultato per lo stesso.
# 7) Default richiesta HTTP
Questa configurazione consente all'utente di impostare i valori predefiniti per il controller di richiesta HTTP.
Esempio: Se stai inviando 50 richieste HTTP al server xyz.com- L'utente deve inserire 'nome server = xyz.com' 50 volte per le 50 richieste HTTP, ma con l'aiuto di HTTP Request Default, l'utente può fare 50 HTTP richieste inserendo una volta il nome del server = xyz.com. Salva il tempo dell'utente.
Tutte le richieste andranno al Webserver fornito.
L'elemento HTTP Request Default punta verso i valori predefiniti utilizzati dagli elementi di richiesta HTTP.
software firewall gratuito per Windows 10
Esempio di come utilizzare l'elemento predefinito richiesta HTTP:
- Piano di test: Inserisci Impostazioni predefinite della richiesta HTTP e aggiungi il nome del server come tribuneindia.com
- Aggiungi gruppo thread
- Aggiungi due richieste HTTP in cui fornire solo il percorso:
- Aggiungi ascoltatore 'Visualizza albero dei risultati' ed esegui lo script. Nel caso in cui non venga fornito alcun percorso, la richiesta andrà al server fornito nell'elemento di configurazione Default richiesta HTTP.
# 8) HTTP Header Manager
Gestore delle intestazioni HTTP aiuta ad aggiungere o sovrapporre le intestazioni delle richieste HTTP. JMeter supporta più gestori di intestazioni. L'elenco del campionatore è costituito da voci di intestazione. Dalle voci di intestazione che vengono unite, nel caso in cui una di esse corrisponda al nome dell'intestazione già esistente, quella vecchia viene sostituita con quella nuova.
Accept-Language, Accept-Encoding, User-Agent, Referrer sono le intestazioni standard che possono essere utilizzate.
Il nome e i valori dell'intestazione possono essere aggiunti selezionando il pulsante Aggiungi.
Accetta la lingua viene utilizzato per definire quale server della lingua deve inviare la risposta al browser.
Accetta la codifica: Accetta codifica definisce il metodo di codifica che il server deve utilizzare per rispondere. Nel caso in cui il server non possa inviare la risposta nella codifica accettata, allora il server lo farà inviare un messaggio di errore e un codice di stato come 406.
Se nel caso in cui il campo di accettazione della codifica non sia fornito, il server presumerà che il client accetterà qualsiasi metodo di codifica.
Agente utente: L'agente utente consente di trovare le caratteristiche come il browser, la versione e il sistema operativo del server web. Quando un browser si connette a uno qualsiasi dei siti Web, invia lo user agent allo stesso. L'agente utente è incluso nell'intestazione HTTP.
I browser supportati per HTTP header Manager sono i seguenti:
- IE
- Firefox
- Safari
- musica lirica
- Cromo
Referente: Quando un sito Web fa riferimento a un altro sito Web, l'indirizzo viene acquisito nel referrer HTTP.
Vediamo come funziona questo gestore di intestazioni HTTP:
- Crea un piano di test e aggiungi un gruppo di thread al suo interno.
- Aggiungi l'elemento Config HTTP Header Manager e aggiungi campi come Accept-Language e Accept con i loro valori.
- Aggiungi richiesta HTTP con il nome e il percorso del server come website.com e accedi.
- Aggiungi ascoltatore 'Visualizza albero dei risultati' ed eseguire lo script e osservare l'output
Ora aggiungi un'altra intestazione HTTP e apporta alcune modifiche come Accept-language as SP-sp e in Accettare e riesegui lo script.
Le intestazioni vengono acquisite solo dall'ultimo gestore di intestazioni, ma non vengono apportate modifiche alle intestazioni già esistenti.
# 9) Configurazione KeyStore
Configurazione Key Store è configurare KeyStore: come caricare e le chiavi da utilizzare.
Per sapere chi si connette al server, alcuni sistemi richiedono la configurazione di certificati lato client. Questo elemento config aiuta a configurare lo stesso, ma prima di aggiungere un elemento KeyStore Config - Java Key Store dovrebbe essere impostato con i certificati client.
Per fare gli stessi passaggi è necessario seguire:
Crea certificato:
- Utilizzo dell'utilità Java Keytool
- Tramite PKI: se eseguito tramite PKI, dovrebbe essere convertito in un formato accettabile da JKS
Aggiungi quanto segue nel sistema. file delle proprietà:
javax.net.ssl.keyStore = path_to_keystore
javax.net.ssl.keyStorePassword = password_of_keystore
Precarica : KeyStore da precaricare o meno, può essere scelto selezionando vero o falso.
Nome variabile che detiene l'alias del certificato: Nome variabile che sarà costituito dall'alias da utilizzare per l'autenticazione tramite certificato client.
Indice iniziale alias (basato su 0): L'indice della prima chiave da utilizzare in KeyStore.
Alias End Index (base 0): L'indice dell'ultima chiave da utilizzare in KeyStore.
# 10) Impostazioni predefinite della richiesta LDAP
Impostazioni predefinite della richiesta LDAP consente di aggiungere valori predefiniti per il test LDAP.
Se il numero di richieste deve essere effettuato allo stesso server LDAP, l'elemento di configurazione predefinito della richiesta LDAP può essere utilizzato poiché l'utente non dovrà immettere più volte gli stessi dettagli per la richiesta LDAP.
È possibile configurare quattro richieste LDAP:
- Aggiungi test
- Elimina test
- Prova di ricerca
- Modifica test
Queste richieste possono essere configurate aggiungendo la richiesta LDAP al campionatore e quindi cambiando il nome in Aggiungi / Elimina / Modifica / Cerca e selezionando la proprietà rispettivamente come Aggiungi test / Elimina / Modifica / Cerca test.
# 11) Valori predefiniti delle richieste estese LDAP
Questo elemento di configurazione consente di aggiungere valori predefiniti per test LDAP estesi.
L'elemento LDAP Config ha nove operazioni di test come definito di seguito:
# 1) Legame del filo
Thread Bind viene utilizzato per avviare una sessione con il server LDAP. L'utente fornisce un nome utente e una password per avviare la sessione. Fornire una password errata avvia la sessione anonima, ma fallirà lo stesso.
# 2) Scollega thread
Discussione Unbind è un'operazione usata per terminare la sessione.
# 3) Single Bind / Unbind
Bind singolo / Unbind funziona come una combinazione di entrambe le operazioni. Apre la sessione per verificare la validità del nome utente e della password e quindi termina la sessione.
qual è la fase di analisi nella sdlc
# 4) Rinomina la voce
Come suggerisce il nome, viene utilizzato per rinominare una voce. Può anche essere utilizzato per spostare la voce in un altro punto dell'albero LDAP.
# 5) Aggiungi test
Viene utilizzato per aggiungere oggetti al server LDAP. È l'operazione di 'aggiunta' LDAP che viene utilizzata.
# 6) Test di cancellazione
Il test di eliminazione viene utilizzato per eliminare un oggetto dall'albero LDAP.
L'operazione utilizzata è denominata operazione di “cancellazione” LDAP.
# 7) Prova di ricerca
LDAP 'ricerca' l'operazione viene eseguita per questo test.
Possono essere fornite specifiche come il tempo massimo che il server dovrebbe impiegare per eseguire la ricerca, se l'oggetto da restituire o meno (per impostazione predefinita è considerato solo falso). Se si sceglie di analizzare il risultato della ricerca come vero, il risultato della ricerca verrà aggiunto ai dati della risposta.
# 8) Confronta test
Il test di confronto viene utilizzato per confrontare l'attributo con un valore già noto. In generale, viene utilizzato per verificare il nome di una persona nel gruppo, ovvero se il nome fornito esiste già in quel gruppo o meno può essere confrontato.
LDAP ' confrontare 'Operazione viene utilizzata per lo stesso.
# 9) Test di modifica
Il test di modifica può essere utilizzato per aggiungere / eliminare / rimuovere / sostituire i valori utilizzando LDAP ' modificare 'Operazione.
Domande frequenti sugli elementi di configurazione di JMeter
D # 1) Cos'è l'elemento Config in JMeter?
Risposta : Le richieste, inviate al server, vengono modificate o configurate utilizzando gli elementi di configurazione in JMeter.
D # 2) Quali sono le proprietà del thread in JMeter?
Risposta : Le proprietà del thread includono il numero di thread utilizzati per eseguire lo stesso scenario e anche il numero di iterazioni che possono essere impostate dalla configurazione.
D # 3) Quale elemento in JMeter corrisponde al numero di utenti da simulare?
Risposta : Il gruppo di thread corrisponde al numero di utenti da simulare poiché è possibile utilizzare un numero di thread per configurare gli utenti da simulare per verificare le prestazioni e l'interazione degli utenti con l'applicazione.
Conclusione
Gli elementi di configurazione di JMeter consentono agli utenti di accedere a qualsiasi variabile ulteriormente associata ai valori in JMeter. Possono modificare i valori delle richieste originate dal Sampler.
Gli elementi di configurazione possono essere aggiunti facendo clic con il pulsante destro del mouse sul Campionatore aggiunto e quindi selezionando l'elemento di configurazione dall'elenco. È possibile accedervi solo da dove si trova, ovvero dall'interno del ramo dell'albero.
Ci sono una serie di elementi di configurazione in JMeter come discusso in questo articolo e possono essere utilizzati secondo i requisiti dell'utente.
<< PREV | IL PROSSIMO >>
=> Fare clic qui Completa formazione gratuita su JMeter (20+ video)
Lettura consigliata
- Parametrizzazione dei dati JMeter mediante variabili definite dall'utente
- Parametrizzazione in QTP spiegata con esempi (Parte 1) - Tutorial QTP # 19
- Parametrizzazione dei valori statici in LoadRunner
- Come ottenere la correlazione JMeter con l'esempio
- I 5 migliori plugin JMeter e come usarli (con esempi)
- Descrizione dettagliata dei componenti JMeter
- Metodi di registrazione web e mobile e parametrizzazione in Neoload
- Variabili e funzioni di JMeter