Introduzione al cloud testing con sam remote test-event - AWS Serverless Application Model

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à.

Introduzione al cloud testing con sam remote test-event

Utilizzate il AWS Serverless Application Model comando Command Line Interface (AWS SAM CLI) sam remote test-event per accedere e gestire eventi di test condivisibili per le vostre AWS Lambda funzioni.

Per ulteriori informazioni sugli eventi di test condivisibili, consulta gli eventi di test condivisibili nella Guida per gli sviluppatori.AWS Lambda

Per utilizzarlosam remote test-event, installa AWS SAMCLI completando quanto segue:

Se l'hai già AWS SAM CLI installato, ti consigliamo di eseguire l'aggiornamento alla versione più recente della AWS SAMCLI versione. Per ulteriori informazioni, consulta Aggiornamento del AWS SAMCLI.

Prima dell'usosam remote test-event, si consiglia una conoscenza di base di quanto segue:

Configura AWS SAMCLI da usare sam remote test-event

Completa i seguenti passaggi di configurazione per utilizzare il AWS SAM CLI sam remote test-event comando:

  1. Configuralo AWS SAM CLI per utilizzare il tuo Account AWS: gli eventi di test condivisibili per Lambda sono accessibili e gestiti dagli utenti all'interno della stessa. Account AWS Per configurare l' AWS SAM CLIutilizzo del tuo Account AWS, vedi. Configurazione del AWS SAMCLI

  2. Configura le autorizzazioni per gli eventi di test condivisibili: per accedere e gestire gli eventi di test condivisibili, devi disporre delle autorizzazioni appropriate. Per ulteriori informazioni, consulta Shareable test events nella Developer Guide.AWS Lambda

Utilizzo del comando sam remote test-event

Il AWS SAM CLI sam remote test-event comando fornisce i seguenti sottocomandi che potete utilizzare per accedere e gestire gli eventi di test condivisibili:

  • delete— Eliminare un evento di test condivisibile dal registro degli EventBridge schemi di Amazon.

  • get— Ottieni un evento di test condivisibile dal registro dello EventBridge schema.

  • list— Elenca gli eventi di test condivisibili esistenti per una funzione dal registro dello EventBridge schema.

  • put— Salva un evento da un file locale nel registro dello EventBridge schema.

Per elencare questi sottocomandi utilizzando il AWS SAM CLI, esegui quanto segue:

$ sam remote test-event --help

Eliminazione di eventi di test condivisibili

È possibile eliminare un evento di test condivisibile utilizzando il delete sottocomando insieme a quanto segue:

  • Fornire il nome dell'evento di test condivisibile da eliminare.

  • Fornisci un ID accettabile della funzione Lambda associata all'evento.

  • Se si fornisce l'ID logico della funzione Lambda, è necessario fornire anche il nome dello AWS CloudFormation stack associato alla funzione Lambda.

Di seguito è riportato un esempio:

$ sam remote test-event delete HelloWorldFunction --stack-name sam-app --name demo-event

Per un elenco delle opzioni da utilizzare con il delete sottocomando, vedere. sam remote test-event delete È inoltre possibile eseguire quanto segue da: AWS SAM CLI

$ sam remote test-event delete --help

Ottenere eventi di test condivisibili

È possibile ottenere un evento di test condivisibile dal registro dello EventBridge schema utilizzando il get sottocomando insieme a quanto segue:

  • Fornisci il nome dell'evento di test condivisibile da ottenere.

  • Fornisci un ID accettabile della funzione Lambda associata all'evento.

  • Se si fornisce l'ID logico della funzione Lambda, è necessario fornire anche il nome dello AWS CloudFormation stack associato alla funzione Lambda.

Di seguito è riportato un esempio che ottiene un evento di test condivisibile denominato demo-event associato alla funzione HelloWorldFunction Lambda dello sam-app stack. Questo comando stamperà l'evento sulla tua console.

$ sam remote test-event get HelloWorldFunction --stack-name sam-app --name demo-event

Per ottenere un evento di test condivisibile e salvarlo sul computer locale, usa l'--output-fileopzione e fornisci un percorso e un nome del file. Di seguito è riportato un esempio che salva demo-event come demo-event.json nella directory di lavoro corrente:

$ sam remote test-event get HelloWorldFunction --stack-name sam-app --name demo-event --output-file demo-event.json

Per un elenco delle opzioni da utilizzare con il get sottocomando, vedetesam remote test-event get. È inoltre possibile eseguire quanto segue da: AWS SAM CLI

$ sam remote test-event get --help

Elenco degli eventi di test condivisibili

Puoi elencare tutti gli eventi di test condivisibili per una particolare funzione Lambda dal registro dello schema. Utilizzate il list sottocomando insieme a quanto segue:

  • Fornisci un ID accettabile della funzione Lambda associata agli eventi.

  • Se si fornisce l'ID logico della funzione Lambda, è necessario fornire anche il nome dello AWS CloudFormation stack associato alla funzione Lambda.

Di seguito è riportato un esempio che ottiene un elenco di tutti gli eventi di test condivisibili associati alla funzione HelloWorldFunction Lambda dello stack: sam-app

$ sam remote test-event list HelloWorldFunction --stack-name sam-app

Per un elenco delle opzioni da utilizzare con il sottocomando, vedere. list sam remote test-event list È inoltre possibile eseguire quanto segue da: AWS SAM CLI

$ sam remote test-event list --help

Salvataggio di eventi di test condivisibili

È possibile salvare eventi di test condivisibili nel registro dello EventBridge schema. Utilizzate il put sottocomando insieme a quanto segue:

  • Fornisci un ID accettabile della funzione Lambda associata all'evento di test condivisibile.

  • Fornisci un nome per l'evento di test condivisibile.

  • Fornisci il percorso e il nome del file all'evento locale da caricare.

Di seguito è riportato un esempio che salva l'demo-event.jsonevento locale come demo-event e lo associa alla funzione HelloWorldFunction Lambda dello sam-app stack:

$ sam remote test-event put HelloWorldFunction --stack-name sam-app --name demo-event --file demo-event.json

Se nel registro dello EventBridge schema esiste un evento di test condivisibile con lo stesso nome, non lo AWS SAM CLI sovrascriverà. Per sovrascrivere, aggiungi l'--forceopzione al tuo comando.

Per un elenco delle opzioni da utilizzare con il put sottocomando, vedere. sam remote test-event put È inoltre possibile eseguire quanto segue da: AWS SAM CLI

$ sam remote test-event put --help

Utilizzo di eventi di test condivisibili

Usa eventi di test condivisibili per testare le tue funzioni Lambda con Cloud AWS sam remote invoke il comando. Per ulteriori informazioni, consulta Passa eventi di test condivisibili a una funzione Lambda nel cloud.

Gestione di eventi di test condivisibili

Questo argomento contiene esempi su come gestire e utilizzare eventi di test condivisibili.

Ottieni un evento di test condivisibile, modificalo e utilizzalo

È possibile ottenere un evento di test condivisibile dal registro degli EventBridge schemi, modificarlo localmente e utilizzare l'evento di test locale con la funzione Lambda in. Cloud AWS Di seguito è riportato un esempio:

  1. Recupera l'evento di test condivisibile: utilizza il sam remote test-event get sottocomando per recuperare un evento di test condivisibile per una funzione Lambda specifica e salvarlo localmente:

    $ sam remote test-event get HelloWorldFunction --stack-name sam-app --name demo-event --output-file demo-event.json
  2. Modifica l'evento di test condivisibile: utilizza un editor di testo a tua scelta per modificare l'evento di test condivisibile.

  3. Usa l'evento di test condivisibile: utilizza il sam remote invoke comando e fornisci il percorso del file e il nome dell'evento con: --event-file

    $ sam remote invoke HelloWorldFunction --stack-name sam-app --event-file demo-event.json

Ottieni un evento di test condivisibile, modificalo, caricalo e usalo

È possibile ottenere un evento di test condivisibile dal registro dello EventBridge schema, modificarlo localmente e caricarlo. Quindi, puoi passare l'evento di test condivisibile direttamente alla tua funzione Lambda in. Cloud AWS Di seguito è riportato un esempio:

  1. Recupera l'evento di test condivisibile: utilizza il sam remote test-event get sottocomando per recuperare un evento di test condivisibile per una funzione Lambda specifica e salvarlo localmente:

    $ sam remote test-event get HelloWorldFunction --stack-name sam-app --name demo-event --output-file demo-event.json
  2. Modifica l'evento di test condivisibile: utilizza un editor di testo a tua scelta per modificare l'evento di test condivisibile.

  3. Carica l'evento di test condivisibile: utilizza il sam remote test-event put sottocomando per caricare e salvare l'evento di test condivisibile nel registro dello schema. EventBridge In questo esempio, utilizziamo l'--forceopzione per sovrascrivere una versione precedente del nostro test condivisibile:

    $ sam remote test-event put HelloWorldFunction --stack-name sam-app --name demo-event --file demo-event.json --force
  4. Passa l'evento di test condivisibile alla tua funzione Lambda: usa sam remote invoke il comando per passare l'evento di test condivisibile direttamente alla tua funzione Lambda in: Cloud AWS

    $ sam remote invoke HelloWorldFunction --stack-name sam-app --test-event-name demo-event