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 di carico distribuita
Questa soluzione di test di carico consente di esporre i dati dei risultati del 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 il APIs per accedere a qualsiasi funzionalità estesa incorporata 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 Signing Requests nella documentazione di riferimento dell'API REST di Amazon API Gateway.
Le seguenti operazioni sono disponibili nell'API della soluzione.
Nota
Per ulteriori informazioni testScenario e altri parametri, consulta gli scenari e gli
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 l'ora di creazione, la regione e la 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 viene distribuito lo stack (ad esempio,) |
|
|
Versione della soluzione distribuita (ad esempio,) |
Risposte di errore
-
403- Proibito: 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 che include concorrenza, tempo di test, host e metodo per il test |
|
|
Il tipo di test (ad esempio |
|
|
Il tipo di file da caricare (ad esempio |
|
|
Una serie di stringhe per la categorizzazione dei test. Campo opzionale con una lunghezza massima di 5 (ad esempio,) |
|
|
La data di esecuzione di un test. Fornito 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 all'infinito. |
|
|
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
Campo obbligatorio: sì
-
-
latest -
-
Parametro di query per restituire solo l'ultima esecuzione del test. L'impostazione predefinita è
trueTipo: Booleano
Campo obbligatorio: no
-
-
history -
-
Parametro di interrogazione per includere la cronologia dei test eseguiti nella risposta. Il valore predefinito è
true. Imposta sufalseper escludere la cronologiaTipo: Booleano
Campo 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 la categorizzazione dei 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 che include concorrenza, ora del test, host e metodo per il test |
|
|
Il numero di attività necessarie per eseguire il test |
|
|
Un elenco di attività IDs per l'esecuzione dei test |
|
|
I risultati finali del test |
|
|
Un elenco dei risultati finali dei test precedenti (escluso quando |
|
|
Il numero totale di test eseguiti per questo scenario |
|
|
Il timestamp dell'ultima esecuzione del test |
|
|
Un messaggio di errore generato quando si verifica un errore |
|
|
La prossima esecuzione 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
Campo obbligatorio: sì
-
Risposta
| Nome | Description |
|---|---|
|
|
Lo stato del test |
DELETE /scenarios/ {testID}
Description
L'DELETE /scenarios/{testId}operazione consente di eliminare tutti i dati relativi a uno scenario di test specifico.
Parametro di richiesta
-
testId -
-
L'ID univoco del test
Tipo: stringa
Campo 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 che include concorrenza, ora del test, host e metodo per il test |
|
|
Il numero di attività necessarie per eseguire il test |
|
|
Un elenco di attività IDs 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 l'esecuzione del test per uno scenario di test specifico, IDs facoltativamente filtrato per intervallo di tempo. Whenlatest=true, restituisce solo la singola esecuzione del test più recente.
Parametri della richiesta
-
testId -
-
L'ID dello scenario di test
Tipo: stringa
Campo obbligatorio: sì
-
-
latest -
-
Restituisce solo l'ID di esecuzione del test più recente
Tipo: Booleano
Impostazione predefinita:
falseCampo obbligatorio: no
-
-
start_timestamp -
-
Timestamp ISO 8601 da cui filtrare le esecuzioni di test (incluso). Ad esempio,
2024-01-01T00:00:00ZTipo: Stringa (formato data-ora)
Campo obbligatorio: no
-
-
end_timestamp -
-
Il timestamp ISO 8601 per filtrare i test viene eseguito fino a (incluso). Ad esempio,
2024-12-31T23:59:59ZTipo: Stringa (formato data-ora)
Campo obbligatorio: no
-
-
limit -
-
Numero massimo di esecuzioni di test da restituire (ignorato quando)
latest=trueTipo: numero intero (minimo: 1, massimo: 100)
Impostazione predefinita:
20Campo obbligatorio: no
-
-
next_token -
-
Token di impaginazione dalla risposta precedente alla pagina successiva
▬Tipo: stringa
Campo obbligatorio: no
-
Risposta
200 - Successo
| Nome | Description |
|---|---|
|
|
Serie di oggetti di esecuzione del test, ciascuno contenente |
|
|
Oggetto contenente |
Risposte di errore
-
400- Formato o parametri del timestamp non validi -
404- Scenario di test non trovato -
500- Errore interno del server
Esempio di utilizzo
-
Solo l'ultimo test eseguito:
GET /scenarios/test123/testruns?latest=true -
Ultimo entro l'intervallo di tempo:
GET /scenarios/test123/testruns?latest=true&start_timestamp=2024-01-01T00:00:00Z -
Richiesta di pagina successiva:
GET /scenarios/test123/testruns?limit=20&next_token=eyJ0ZXN0SWQiOiJzZVFVeTEyTEtMIiwic3RhcnRUaW1lIjoiMjAyNC0wMS0xM1QxNjo0NTowMFoifQ==
GET /scenarios/ {testID} /testruns/ {} testRunId
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
Campo obbligatorio: sì
-
-
testRunId -
-
L'ID specifico dell'esecuzione del test
Tipo: stringa
Campo obbligatorio: sì
-
-
history -
-
Include l'array di cronologia in risposta. Imposta su
falseper omettere la cronologia per una risposta più rapidaTipo: Booleano
Impostazione predefinita:
trueCampo obbligatorio: 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 in cui è terminato il test (ad esempio, |
|
|
Percentuale di successo (ad esempio, |
|
|
Matrice di oggetti di configurazione delle attività contenenti |
|
|
Le regioni di mappatura degli oggetti in base al numero di attività completate |
|
|
Oggetto contenente metriche dettagliate tra cui |
|
|
Oggetto contenente la configurazione di test con |
|
|
Matrice di risultati storici dei test (escluso quando |
Risposte di errore
-
400- TestID non valido o testRunId -
404- Esecuzione del test non trovata -
500- Errore interno del server
ELIMINA /scenarios/ {testID} /testruns/ {} testRunId
Description
L'DELETE /scenarios/{testId}/testruns/{testRunId}operazione elimina tutti i dati e gli artefatti relativi a una specifica esecuzione di 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
Campo obbligatorio: sì
-
-
testRunId -
-
L'ID di esecuzione del test specifico da eliminare
Tipo: stringa
Campo obbligatorio: sì
-
Risposta
204 - Successo
Esecuzione del test eliminata con successo (nessun contenuto restituito)
Risposte di errore
-
400- TestID non valido o testRunId -
403- Proibito: 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 base 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
Campo obbligatorio: sì
-
-
data -
-
Restituisce i dati completi di esecuzione del test di base se
true, altrimenti solo testRunIdTipo: Booleano
Impostazione predefinita:
falseCampo obbligatorio: no
-
Risposta
200 - Successo
Quando data=false (impostazione predefinita):
| Nome | Description |
|---|---|
|
|
L'ID dello scenario di test (ad esempio, |
|
|
L'ID di esecuzione del test di base (ad esempio, |
Quandodata=true:
| Nome | Description |
|---|---|
|
|
L'ID dello scenario di test (ad esempio, |
|
|
L'ID di esecuzione del test di base (ad esempio, |
|
|
Oggetto completo dei risultati dell'esecuzione del test (stessa |
Risposte di errore
-
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 designa un test specifico 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
Campo 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 esecuzione del test di base che è stato impostato (ad esempio, |
Risposte di errore
-
400- TestID non valido o testRunId -
404- Scenario di test o esecuzione del test non trovati -
409- Conflitto: l'esecuzione del test non può essere impostata come base (ad esempio, test fallito) -
500- Errore interno del server
DELETE /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
Campo obbligatorio: sì
-
Risposta
204 - Successo
Baseline cancellata con successo (nessun contenuto restituito)
Risposte di errore
-
400- TestID non valido -
500- Errore interno del server
GET /tasks
Description
L'GET /tasksoperazione consente di recuperare un elenco di attività Amazon Elastic Container Service (Amazon ECS) in esecuzione.
Risposta
| Nome | Description |
|---|---|
|
|
Un elenco di attività IDs per l'esecuzione dei test |
OPZIONI/task
Description
L'operazione OPTIONS /tasks tasks fornisce una risposta alla richiesta con le intestazioni di risposta CORS corrette.
Risposta
| Nome | Description |
|---|---|
|
|
Un elenco di attività IDs 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 Amazon Fargate nella regione |
|
|
La regione in cui esistono le risorse della 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 Amazon Fargate nella regione |
|
|
La regione in cui esistono le risorse della 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 |