Aggiungere richieste ai test di carico basati su URL in Test di carico di Azure
Questo articolo illustra come aggiungere richieste HTTP a un test di carico basato su URL in Test di carico di Azure. Usare un test di carico basato su URL per convalidare gli endpoint HTTP, ad esempio applicazioni Web o endpoint REST, senza conoscere in precedenza gli strumenti di test di carico e gli script.
supporto tecnico di Azure due modi per definire le richieste HTTP in un test di carico basato su URL. È possibile combinare entrambi i metodi all'interno di un test di carico.
- Specificare i dettagli dell'endpoint HTTP, ad esempio l'URL dell'endpoint, il metodo HTTP, le intestazioni, i parametri di query o il corpo della richiesta.
- Immettere un comando cURL per la richiesta HTTP.
Se si dispone di richieste dipendenti, è possibile estrarre i valori di risposta da una richiesta e passarli come input a una richiesta successiva. Ad esempio, è possibile recuperare prima i dettagli del cliente ed estrarre l'ID cliente per recuperare i dettagli dell'ordine del cliente.
Se si usa un test di carico basato su URL nel flusso di lavoro CI/CD, è possibile passare un file JSON contenente le richieste HTTP al test di carico.
È possibile aggiungere fino a cinque richieste a un test di carico basato su URL. Per test di carico più complessi, è possibile creare un test di carico caricando uno script di test JMeter. Ad esempio, quando si hanno più di cinque richieste, se si usano protocolli non HTTP o se è necessario usare i plug-in JMeter.
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
- Risorsa del test di carico di Azure. Per creare una risorsa di test di carico, vedere Creare ed eseguire un test di carico.
Aggiungere richieste con dettagli HTTP
È possibile specificare una richiesta HTTP per un test di carico basato su URL specificando i dettagli della richiesta HTTP. La tabella seguente elenca i campi che è possibile configurare per una richiesta HTTP in Test di carico di Azure:
Campo | Dettagli |
---|---|
URL | URL dell'endpoint HTTP. Ad esempio: https://www.contoso.com/products . |
metodo | Metodo HTTP. Test di carico di Azure supporta GET, POST, PUT, DELETE, PATCH, HEAD e OPTIONS. |
Parametri di query | (Facoltativo) Immettere i parametri della stringa di query da aggiungere all'URL. |
Intestazioni HTTP | (Facoltativo) Immettere le intestazioni HTTP da includere nella richiesta HTTP. È possibile aggiungere fino a 20 intestazioni per una richiesta. |
Testo della richiesta | (Facoltativo) A seconda del metodo HTTP, è possibile specificare il contenuto del corpo HTTP. Test di carico di Azure supporta i formati seguenti: dati non elaborati, visualizzazione JSON, JavaScript, HTML e XML. |
Seguire questa procedura per aggiungere una richiesta HTTP a un test di carico basato su URL:
Nel portale di Azure, passare alla risorsa del test di carico.
Nel riquadro di spostamento a sinistra selezionare Test per visualizzare tutti i test.
Nell'elenco selezionare il test di carico e quindi selezionare Modifica.
Assicurarsi di selezionare un test di carico basato su URL dall'elenco e di abilitare Le impostazioni avanzate nella scheda Informazioni di base.
Passare alla scheda Piano di test e selezionare Aggiungi richiesta.
Selezionare Aggiungi input nell'interfaccia utente per immettere i dettagli della richiesta HTTP.
Immettere i dettagli della richiesta HTTP e quindi selezionare Aggiungi per aggiungere la richiesta al test di carico.
Campo Descrizione Formato della richiesta Selezionare Aggiungere l'input nell'interfaccia utente per configurare i dettagli della richiesta tramite i campi nel portale di Azure. Request name (Nome richiesta) Immettere un nome univoco per la richiesta. È possibile fare riferimento a questo nome della richiesta quando si definiscono i criteri di esito negativo del test. URL URL dell'endpoint dell'applicazione. Metodo Selezionare un metodo HTTP dall'elenco. Test di carico di Azure supporta GET, POST, PUT, DELETE, PATCH, HEAD e OPTIONS. Parametri di query (Facoltativo) Immettere i parametri della stringa di query da aggiungere all'URL. Intestazioni (Facoltativo) Immettere le intestazioni HTTP da includere nella richiesta HTTP. Testo (Facoltativo) A seconda del metodo HTTP, è anche possibile specificare il contenuto del corpo HTTP. Test di carico di Azure supporta i formati seguenti: dati non elaborati, visualizzazione JSON, JavaScript, HTML e XML. Selezionare Applica per salvare il test di carico.
Aggiungere richieste con cURL
Anziché fornire i dettagli della richiesta HTTP, è anche possibile fornire comandi cURL per le richieste HTTP nel test di carico basato su URL. cURL è uno strumento da riga di comando e una libreria per le richieste basate su URL.
Seguire questa procedura per aggiungere una richiesta HTTP a un test di carico usando un comando cURL.
Nell'elenco dei test selezionare il test di carico e quindi selezionare Modifica.
Assicurarsi di selezionare un test di carico basato su URL dall'elenco e di abilitare Le impostazioni avanzate nella scheda Informazioni di base.
Passare alla scheda Piano di test e selezionare Aggiungi richiesta.
Selezionare Aggiungi comando cURL per creare una richiesta HTTP usando cURL.
Immettere il comando cURL nel campo del comando cURL e quindi selezionare Aggiungi per aggiungere la richiesta al test di carico.
L'esempio seguente usa cURL per eseguire una richiesta HTTP GET, specificando un'intestazione HTTP:
curl --request GET 'http://www.contoso.com/customers?version=1' --header 'api-token: my-token'
Selezionare Applica per salvare il test di carico.
Usare le variabili nelle richieste HTTP
È possibile usare le variabili nella richiesta HTTP per rendere i test più flessibili o per evitare di includere segreti nel piano di test. Ad esempio, è possibile usare una variabile di ambiente con il nome di dominio dell'endpoint e quindi usare il nome della variabile nelle singole richieste HTTP. L'uso delle variabili rende il piano di test più flessibile e gestibile.
Con i test di carico basati su URL in Test di carico di Azure, è possibile usare le variabili per fare riferimento alle informazioni seguenti:
- Variabili di ambiente: è possibile configurare le variabili di ambiente per il test di carico
- Segreti: configurare i segreti di Azure Key Vault nel test di carico
- Valori di un file di input CSV: usare le variabili per le colonne in un file di input CSV ed eseguire una richiesta per ogni riga nel file
- Variabili di risposta: estrarre valori da una richiesta HTTP precedente
La sintassi per fare riferimento a una variabile in una richiesta è: ${variable-name}
.
Lo screenshot seguente mostra come fare riferimento a una variabile in un'intestazione token
HTTP usando ${token}
.
Nota
Se si specificano i certificati, Test di carico di Azure passa automaticamente i certificati in ogni richiesta HTTP.
Usare le variabili di risposta per le richieste dipendenti
Per creare richieste HTTP che dipendono da una richiesta precedente, è possibile usare le variabili di risposta. Ad esempio, nella prima richiesta è possibile recuperare un elenco di elementi da un'API, estrarre l'ID dal primo risultato e quindi effettuare un successivo e passare questo ID come parametro della stringa di query.
Test di carico di Azure supporta le opzioni seguenti per estrarre i valori da una richiesta HTTP e archiviarli in una variabile:
- JSONPath
- XPath
- Espressione regolare
Nell'esempio seguente viene illustrato ad esempio come usare un XPathExtractor per archiviare il corpo di una richiesta nella variabile di token
risposta. È quindi possibile usare ${token}
in altre richieste HTTP per fare riferimento a questo valore.
"responseVariables": [
{
"extractorType": "XPathExtractor",
"expression": "/note/body",
"variableName": "token"
}
]