Come utilizzare le asserzioni in JMeter (Esempio di risposta)
Cos'è un'asserzione?
La guida per l'asserzione verifica che il server sottoposto a test restituisca il file previsto risultati.
Tipi di asserzioni
Di seguito sono riportate alcune asserzioni comunemente utilizzate in JMeter:
- Asserzione di risposta
- Asserzione di durata
- Affermazione della dimensione
- Asserzione XML
- Asserzione HTML
- Passaggi per utilizzare l'asserzione di risposta
Asserzione di risposta
L'asserzione di risposta consente di aggiungere stringhe di pattern da confrontare con vari campi della risposta del server.
Ad esempio, invii una richiesta utente al sito web http://www.google.com e ottieni la risposta del server. È possibile utilizzare l'asserzione di risposta per verificare se la risposta del server contiene stringa del modello prevista (ad esempio "OK").
Asserzione di durata
L'Asserzione della Durata verifica che ciascuna risposta del server sia stata ricevuta entro a dato importo di tempo. Qualsiasi risposta che richiede più tempo del numero specificato di millisecondi (specificato dall'utente) viene contrassegnata come risposta non riuscita.
Ad esempio, viene inviata una richiesta dell'utente a www.google.com by JMeter e ottieni una risposta all'interno previsto tempo 5 ms quindi Test Case superato, altrimenti il test è fallito.
Affermazione della dimensione
L'asserzione dimensione verifica che ciascuna risposta del server contenga il numero previsto di byte. È possibile specificare che la dimensione sia uguale, maggiore, minore o diversa da un determinato numero di byte.
JMeter invia una richiesta dell'utente a www.google.com e riceve un pacchetto di risposta di dimensioni inferiori a previsto byte 5000 byte un test case superato. Altrimenti il test case è fallito.
Asserzione XML
XML L'asserzione verifica che i dati di risposta siano costituiti da un documento XML formalmente corretto.
Asserzione HTML
L'asserzione HTML consente all'utente di verificare la sintassi HTML dei dati di risposta. Significa che i dati di risposta devono rispettare la sintassi HTML.
Passaggi per utilizzare l'asserzione di risposta
Continueremo con lo script che abbiamo sviluppato in precedenza lezione.
In questo test, stiamo utilizzando Asserzione di risposta per confrontare il pacchetto di risposta da www.google.com corrisponde alla stringa prevista.
Ecco il tabella di marcia per questa prova:
Il pannello di controllo dell'asserzione della risposta consente di aggiungere stringhe di pattern da confrontare con vari campi della risposta.
Passaggio 1) Aggiungere l'asserzione di risposta
Right-Click Gruppo discussione -> Aggiungi -> Asserzioni -> Asserzione di risposta
Il riquadro Asserzione di risposta viene visualizzato come nella figura seguente:
Passaggio 2) Aggiungi il modello da testare
Quando invii una richiesta al server di Google, potrebbe restituirne alcuni Codice di risposta come di seguito:
- 404: Errore del server
- 200: Server OK
- 302: Il server Web reindirizza ad altre pagine. Questo di solito accade quando accedi a google.com dall'esterno degli Stati Uniti. Google reindirizza al sito web specifico del paese. Come mostrato di seguito, google.com reindirizza a google.co.in per gli utenti indiani.
Supponiamo che tu voglia verificare che il codice di risposta del server web google.com contenga pattern 302
On Campo di risposta da testare, scegli Codice di risposta,
Nel pannello Asserzione di risposta, fare clic su Aggiungi -> viene visualizzata una nuova voce vuota -> immettere 302 in Modello da testare.
Passaggio 3) Aggiungere i risultati dell'asserzione
Fare clic con il tasto destro su Gruppo di thread, Aggiungi -> Ascoltatore -> Risultati delle asserzioni
Passaggio 4) Esegui il test
Fare clic su Gruppo di thread -> Risultato dell'asserzione
Quando sei pronto per eseguire un test, fai clic su la corsa pulsante sulla barra dei menu o tasto di scelta rapida CTRL+R.
Il risultato del test verrà visualizzato nel riquadro Risultati asserzione. Se il server di Google Codice di risposta contiene il modello 302, il caso di prova è passato. Vedrai il messaggio visualizzato come segue:
Ora torniamo al pannello di asserzione della risposta, modifichi il modello da testare da 302 a 500.
Poiché il codice di risposta del server Google non contiene questo modello, vedrai il test case fallito come segue:
Troubleshooting
Se riscontri il problema durante l'esecuzione degli scenari sopra indicati, procedi come segue:
- Controlla se ti stai connettendo a Internet tramite un proxy. Se sì, rimuovi il proxy.
- Apri una nuova istanza di JMeter
- Aprire il AssertionTestPlan.jmx in JMeter
- Fare clic su Gruppo di thread -> Risultato dell'asserzione
- Esegui il test