Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
API di test del carico distribuito
Questa soluzione di test di carico consente di esporre i dati dei risultati dei test in modo sicuro. L'API funge da «porta d'ingresso» per l'accesso ai dati di test archiviati in Amazon DynamoDB. Puoi anche utilizzare le API per accedere a qualsiasi funzionalità estesa integrata nella soluzione.
Questa soluzione utilizza un pool di utenti Amazon Cognito integrato con Amazon API Gateway per l'identificazione e l'autorizzazione. Quando un pool di utenti viene utilizzato con l'API, i client possono chiamare i metodi attivati dal pool di utenti solo dopo aver fornito un token di identità valido.
Per ulteriori informazioni sull'esecuzione dei test direttamente tramite l'API, consulta la sezione Signing Requests nella documentazione di riferimento dell'API REST di Amazon API Gateway.
Le seguenti operazioni sono disponibili nell'API della soluzione.
Nota
Informazioni sullo stack
Scenari
Esecuzioni di test
Linea di base
Attività
Regioni
OTTIENI /stack-info
Description
L'GET /stack-infooperazione recupera informazioni sullo stack distribuito, tra cui ora di creazione, regione e versione. Questo endpoint viene utilizzato dal front-end.
Risposta
200 - Successo
| Nome | Description |
|---|---|
|
|
Timestamp ISO 8601 al momento della creazione dello stack (ad esempio,) |
|
|
Regione AWS in cui è distribuito lo stack (ad esempio,) |
|
|
Versione della soluzione distribuita (ad esempio,) |
Risposte agli errori
-
403- Vietato: autorizzazioni insufficienti per accedere alle informazioni sullo stack -
404- Non trovato: informazioni sullo stack non disponibili -
500- Errore interno del server
GET /scenarios
Description
L'GET /scenariosoperazione consente di recuperare un elenco di scenari di test.
Risposta
| Nome | Description |
|---|---|
|
|
Un elenco di scenari che include l'ID, il nome, la descrizione, lo stato, il tempo di esecuzione, i tag, le esecuzioni totali e l'ultima esecuzione per ogni test |
POST /scenari
Description
L'POST /scenariosoperazione consente di creare o pianificare uno scenario di test.
Corpo della richiesta
| Nome | Description |
|---|---|
|
|
Il nome del test |
|
|
La descrizione del test |
|
|
Un oggetto che specifica |
|
|
La definizione del test, inclusi concorrenza, tempo di test, host e metodo per il test |
|
|
Un oggetto che seleziona la modalità Traffic Shape. Omettila per usare la modalità Standard. Includilo, con una durata di |
|
|
Il tipo di test (ad esempio |
|
|
Il tipo di file da caricare (ad esempio |
|
|
Una serie di stringhe per classificare i test. Campo opzionale con una lunghezza massima di 5 (ad esempio,) |
|
|
La data in cui eseguire un test. Fornita solo se si pianifica un test (ad esempio, |
|
|
Il tempo necessario per eseguire un test. Fornito solo se si pianifica un test (ad esempio, |
|
|
Fase del processo di pianificazione. Fornito solo se si pianifica un test ricorrente. (I passaggi disponibili includono e) |
|
|
Il valore cron per personalizzare la pianificazione ricorrente. Se usato, ometti ScheduleDate e ScheduleTime. |
|
|
Data obbligatoria in modo che il cron scada e non venga eseguito a tempo indeterminato. |
|
|
La ricorrenza di un test programmato. Fornito solo se si pianifica un test ricorrente (ad esempio,,, |
Risposta
| Nome | Description |
|---|---|
|
|
L'ID univoco del test |
|
|
Il nome del test |
|
|
Lo stato del test |
OPZIONI/scenari
Description
L'OPTIONS /scenariosoperazione fornisce una risposta alla richiesta con le intestazioni di risposta CORS corrette.
Risposta
| Nome | Description |
|---|---|
|
|
L'ID univoco del test |
|
|
Il nome del test |
|
|
Lo stato del test |
GET /scenarios/ {testId}
Description
L'GET /scenarios/{testId}operazione consente di recuperare i dettagli di uno scenario di test specifico.
Parametri della richiesta
-
testId -
-
L'ID univoco del test
Tipo: stringa
Obbligatorio: sì
-
-
latest -
-
Parametro di interrogazione per restituire solo l'ultima esecuzione del test. L'impostazione predefinita è
trueTipo: Booleano
Obbligatorio: no
-
-
history -
-
Parametro di interrogazione per includere la cronologia dell'esecuzione del test nella risposta. Il valore predefinito è
true. Impostato sufalseper escludere la cronologiaTipo: Booleano
Obbligatorio: no
-
Risposta
| Nome | Description |
|---|---|
|
|
L'ID univoco del test |
|
|
Il nome del test |
|
|
La descrizione del test |
|
|
Il tipo di test che viene eseguito (ad esempio, |
|
|
Il tipo di file che viene caricato (ad esempio |
|
|
Una serie di stringhe per classificare i test |
|
|
Lo stato del test |
|
|
L'ora e la data di inizio dell'ultimo test |
|
|
L'ora e la data in cui è terminato l'ultimo test |
|
|
La definizione del test, inclusi concorrenza, ora del test, host e metodo per il test |
|
|
Il numero di attività necessarie per eseguire il test |
|
|
Un elenco di ID delle attività per l'esecuzione dei test |
|
|
I risultati finali del test |
|
|
Un elenco dei risultati finali dei test precedenti (esclusi quando |
|
|
Il numero totale di test eseguiti per questo scenario |
|
|
La data e l'ora dell'ultima esecuzione del test |
|
|
Un messaggio di errore generato quando si verifica un errore |
|
|
La prossima corsa pianificata (ad esempio, |
|
|
La ricorrenza del test (ad esempio,, |
POST /scenarios/ {testId}
Description
L'POST /scenarios/{testId}operazione consente di annullare uno scenario di test specifico.
Parametro di richiesta
-
testId -
-
L'ID univoco del test
Tipo: stringa
Obbligatorio: sì
-
Risposta
| Nome | Description |
|---|---|
|
|
Lo stato del test |
ELIMINA /scenarios/ {testId}
Description
L'DELETE /scenarios/{testId}operazione consente di eliminare tutti i dati relativi a uno specifico scenario di test.
Parametro di richiesta
-
testId -
-
L'ID univoco del test
Tipo: stringa
Obbligatorio: sì
-
Risposta
| Nome | Description |
|---|---|
|
|
Lo stato del test |
OPZIONI /scenarios/ {testId}
Description
L'OPTIONS /scenarios/{testId}operazione fornisce una risposta alla richiesta con le intestazioni di risposta CORS corrette.
Risposta
| Nome | Description |
|---|---|
|
|
L'ID univoco del test |
|
|
Il nome del test |
|
|
La descrizione del test |
|
|
Il tipo di test che viene eseguito (ad esempio, |
|
|
Il tipo di file che viene caricato (ad esempio |
|
|
Lo stato del test |
|
|
L'ora e la data di inizio dell'ultimo test |
|
|
L'ora e la data in cui è terminato l'ultimo test |
|
|
La definizione del test, inclusi concorrenza, ora del test, host e metodo per il test |
|
|
Il numero di attività necessarie per eseguire il test |
|
|
Un elenco di ID delle attività per l'esecuzione dei test |
|
|
I risultati finali del test |
|
|
Un elenco dei risultati finali dei test precedenti |
|
|
Un messaggio di errore generato quando si verifica un errore |
GET /scenarios/ {testId} /testruns
Description
L'GET /scenarios/{testId}/testrunsoperazione recupera gli ID di esecuzione del test per uno scenario di test specifico, filtrati facoltativamente per intervallo di tempo. Quandolatest=true, restituisce solo la singola esecuzione di test più recente.
Parametri della richiesta
-
testId -
-
L'ID dello scenario di test
Tipo: stringa
Obbligatorio: sì
-
-
latest -
-
Restituisce solo l'ID di esecuzione del test più recente
Tipo: Booleano
Impostazione predefinita:
falseObbligatorio: no
-
-
start_timestamp -
-
Timestamp ISO 8601 da cui filtrare i test (inclusi). Ad esempio,
2024-01-01T00:00:00ZTipo: stringa (formato data-ora)
Obbligatorio: no
-
-
end_timestamp -
-
Timestamp ISO 8601 per filtrare le esecuzioni dei test fino a (incluso). Ad esempio,
2024-12-31T23:59:59ZTipo: stringa (formato data-ora)
Obbligatorio: no
-
-
limit -
-
Numero massimo di esecuzioni di test da restituire (ignorato quando)
latest=trueTipo: intero (minimo: 1, massimo: 100)
Impostazione predefinita:
20Obbligatorio: no
-
-
next_token -
-
Token di impaginazione derivante dalla risposta precedente per accedere alla pagina successiva
▬Tipo: stringa
Obbligatorio: no
-
Risposta
200 - Successo
| Nome | Description |
|---|---|
|
|
Matrice di oggetti eseguiti nel test, ciascuno contenente |
|
|
Oggetto contenente |
Risposte agli errori
-
400- Formato o parametri del timestamp non validi -
404- Scenario di test non trovato -
500- Errore interno del server
Esempio di utilizzo
-
Solo l'ultima esecuzione del test:
GET /scenarios/test123/testruns?latest=true -
Ultimo nell'intervallo di tempo:
GET /scenarios/test123/testruns?latest=true&start_timestamp=2024-01-01T00:00:00Z -
Richiesta sulla pagina successiva:
GET /scenarios/test123/testruns?limit=20&next_token=eyJ0ZXN0SWQiOiJzZVFVeTEyTEtMIiwic3RhcnRUaW1lIjoiMjAyNC0wMS0xM1QxNjo0NTowMFoifQ==
GET /scenarios/ {testId} /testruns/ {test} RunId
Description
L'GET /scenarios/{testId}/testruns/{testRunId}operazione recupera i risultati e le metriche completi per una specifica esecuzione di test. Facoltativamente, ometti i risultati della cronologia con history=false per una risposta più rapida.
Parametri della richiesta
-
testId -
-
L'ID dello scenario di test
Tipo: stringa
Obbligatorio: sì
-
-
testRunId -
-
L'ID specifico dell'esecuzione del test
Tipo: stringa
Obbligatorio: sì
-
-
history -
-
Includi l'array della cronologia nella risposta. Imposta per
falseomettere la cronologia per una risposta più rapidaTipo: Booleano
Impostazione predefinita:
trueObbligatorio: no
-
Risposta
200 - Successo
| Nome | Description |
|---|---|
|
|
L'ID univoco del test (ad esempio, |
|
|
L'ID specifico dell'esecuzione del test (ad esempio, |
|
|
Descrizione del test di carico |
|
|
Il tipo di test (ad esempio |
|
|
Lo stato dell'esecuzione del test: |
|
|
L'ora e la data di inizio del test (ad esempio, |
|
|
L'ora e la data di fine del test (ad esempio, |
|
|
Percentuale di successo (ad esempio, |
|
|
Matrice di oggetti di configurazione delle attività contenenti |
|
|
La mappatura degli oggetti tra le regioni e i conteggi delle attività completate |
|
|
Oggetto contenente metriche dettagliate tra cui |
|
|
Oggetto contenente la configurazione di test con |
|
|
Serie di risultati storici dei test (esclusi quando |
Risposte agli errori
-
400- TestID o test non valido RunId -
404- Esecuzione del test non trovata -
500- Errore interno del server
ELIMINA /scenarios/ {testId} /testruns/ {test} RunId
Description
L'DELETE /scenarios/{testId}/testruns/{testRunId}operazione elimina tutti i dati e gli artefatti relativi a una specifica esecuzione del test. I dati di esecuzione del test vengono rimossi da DynamoDB, mentre i dati di test effettivi in S3 rimangono invariati.
Parametri della richiesta
-
testId -
-
L'ID dello scenario di test
Tipo: stringa
Obbligatorio: sì
-
-
testRunId -
-
L'ID specifico dell'esecuzione del test da eliminare
Tipo: stringa
Obbligatorio: sì
-
Risposta
204 - Successo
Esecuzione del test eliminata con successo (nessun contenuto restituito)
Risposte agli errori
-
400- TestID o test non valido RunId -
403- Vietato: autorizzazioni insufficienti per eliminare l'esecuzione del test -
404- Esecuzione del test non trovata -
409- Conflitto: l'esecuzione del test è attualmente in esecuzione e non può essere eliminata -
500- Errore interno del server
GET /scenarios/ {testId} /baseline
Description
L'GET /scenarios/{testId}/baselineoperazione recupera il risultato del test di riferimento designato per uno scenario. Restituisce l'ID di esecuzione del test di base o i risultati di base completi a seconda del parametro. data
Parametri della richiesta
-
testId -
-
L'ID dello scenario di test
Tipo: stringa
Obbligatorio: sì
-
-
data -
-
Restituisce i dati di base completi dell'esecuzione del test se
true, altrimenti si tratta solo del test RunIdTipo: Booleano
Impostazione predefinita:
falseObbligatorio: no
-
Risposta
200 - Successo
Quando data=false (impostazione predefinita):
| Nome | Description |
|---|---|
|
|
L'ID dello scenario di test (ad esempio, |
|
|
L'ID di base dell'esecuzione del test (ad esempio, |
Quandodata=true:
| Nome | Description |
|---|---|
|
|
L'ID dello scenario di test (ad esempio, |
|
|
L'ID di base dell'esecuzione del test (ad esempio, |
|
|
Oggetto completo dei risultati dell'esecuzione del test (stessa |
Risposte agli errori
-
400- Parametro TestID non valido -
404- Scenario di test non trovato o nessuna linea di base impostata -
500- Errore interno del server
PUT /scenarios/ {testId} /baseline
Description
L'PUT /scenarios/{testId}/baselineoperazione indica una specifica esecuzione di test come base per il confronto delle prestazioni. È possibile impostare una sola linea di base per scenario.
Parametri della richiesta
-
testId -
-
L'ID dello scenario di test
Tipo: stringa
Obbligatorio: sì
-
Corpo della richiesta
| Nome | Description |
|---|---|
|
|
L'ID di esecuzione del test da impostare come riferimento (ad esempio, |
Risposta
200 - Successo
| Nome | Description |
|---|---|
|
|
Messaggio di conferma (ad esempio, |
|
|
L'ID dello scenario di test (ad esempio, |
|
|
L'ID di base dell'esecuzione del test impostato (ad esempio, |
Risposte agli errori
-
400- TestID o test non valido RunId -
404- Scenario o esecuzione del test non trovati -
409- Conflitto: l'esecuzione del test non può essere impostata come base di riferimento (ad esempio, test fallito) -
500- Errore interno del server
ELIMINA /scenarios/ {testId} /baseline
Description
L'DELETE /scenarios/{testId}/baselineoperazione cancella il valore di base per uno scenario impostandolo su una stringa vuota.
Parametri della richiesta
-
testId -
-
L'ID dello scenario di test
Tipo: stringa
Obbligatorio: sì
-
Risposta
204 - Successo
La baseline è stata cancellata correttamente (nessun contenuto restituito)
Risposte agli errori
-
400- TestID non valido -
500- Errore interno del server
GET /tasks
Description
L'GET /tasksoperazione consente di recuperare un elenco di attività di Amazon Elastic Container Service (Amazon ECS) in esecuzione.
Risposta
| Nome | Description |
|---|---|
|
|
Un elenco di ID delle attività per l'esecuzione dei test |
OPZIONI/ATTIVITÀ
Description
L'operazione OPTIONS /tasks tasks fornisce una risposta alla richiesta con le intestazioni di risposta CORS corrette.
Risposta
| Nome | Description |
|---|---|
|
|
Un elenco di ID delle attività per l'esecuzione dei test |
GET /regions
Description
L'GET /regionsoperazione consente di recuperare le informazioni sulle risorse regionali necessarie per eseguire un test in quella regione.
Risposta
| Nome | Description |
|---|---|
|
|
L'ID della regione |
|
|
Il nome del gruppo di CloudWatch log di Amazon per le attività di AWS Fargate nella regione |
|
|
La regione in cui esistono le risorse nella tabella |
|
|
L'ID di una delle sottoreti della regione |
|
|
L'ID di una delle sottoreti nella regione |
|
|
Il nome del cluster AWS Fargate nella regione |
|
|
L'ARN della definizione dell'attività nella regione |
|
|
Il nome dell'immagine dell'attività nella regione |
|
|
L'ID del gruppo di sicurezza nella regione |
OPZIONI/regioni
Description
L'OPTIONS /regionsoperazione fornisce una risposta alla richiesta con le intestazioni di risposta CORS corrette.
Risposta
| Nome | Description |
|---|---|
|
|
L'ID della regione |
|
|
Il nome del gruppo di CloudWatch log di Amazon per le attività di AWS Fargate nella regione |
|
|
La regione in cui esistono le risorse nella tabella |
|
|
L'ID di una delle sottoreti della regione |
|
|
L'ID di una delle sottoreti nella regione |
|
|
Il nome del cluster AWS Fargate nella regione |
|
|
L'ARN della definizione dell'attività nella regione |
|
|
Il nome dell'immagine dell'attività nella regione |
|
|
L'ID del gruppo di sicurezza nella regione |