Este é o Guia do desenvolvedor do AWS CDK v2. O CDK v1 antigo entrou em manutenção em 1º de junho de 2022 e encerrou o suporte em 1º de junho de 2023.
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Conceitos básicos sobre testes locais
Este tópico descreve o que você precisa usar com a CLI do AWS SAM com aplicações do AWS CDK e fornece instruções para criar e testar localmente uma aplicação do AWS CDK.
Pré-requisitos
Para testar localmente, é necessário instalar a CLI do AWS SAM. Consulte Instalação da CLI do AWS SAM para obter instruções de instalação.
Criação e testes locais de uma aplicação do CDK da AWS
Para testar localmente uma aplicação do CDK da AWS usando a CLI do AWS SAM, é necessário ter uma aplicação do AWS CDK que contenha uma função do Lambda. Use as etapas a seguir para criar uma aplicação básica do CDK da AWS com uma função do Lambda. Para obter mais informações, consulte Criação de uma aplicação com tecnologia sem servidor usando o CDK da AWS no Guia do desenvolvedor do kit de desenvolvimento em nuvem da AWS (CDK da AWS).
- Etapa 1: criar uma aplicação do CDK da AWS
-
Para este tutorial, inicialize uma aplicação do CDK da AWS que use TypeScript.
Comando a ser executado:
$ mkdir cdk-sam-example $ cd cdk-sam-example $ cdk init app --language typescript
- Etapa 2: adicionar uma função do Lambda à sua aplicação
-
Substitua o código em
lib/cdk-sam-example-stack.tspelo seguinte:import { Stack, StackProps } from 'aws-cdk-lib'; import { Construct } from 'constructs'; import * as lambda from 'aws-cdk-lib/aws-lambda'; export class CdkSamExampleStack extends Stack { constructor(scope: Construct, id: string, props?: StackProps) { super(scope, id, props); new lambda.Function(this, 'MyFunction', { runtime: lambda.Runtime.PYTHON_3_12, handler: 'app.lambda_handler', code: lambda.Code.fromAsset('./my_function'), }); } }
- Etapa 3: adicionar o código da função do Lambda
-
Crie um diretório chamado
my_function. Nesse diretório, crie um arquivo chamadoapp.py.Comando a ser executado:
def lambda_handler(event, context): return "Hello from SAM and the CDK!"
- Etapa 4: testar sua função do Lambda
-
É possível usar a CLI do AWS SAM para invocar localmente uma função do Lambda que você define em uma aplicação do AWS CDK. Para fazer isso, você precisa do identificador do constructo da função e do caminho para seu modelo sintetizado do AWS CloudFormation.
Execute o comando a seguir para retornar ao diretório
lib:$ cd ..Comando a ser executado:
$ cdk synth --no-staging$ sam local invoke MyFunction --no-event -t ./cdk.out/CdkSamExampleStack.template.jsonExemplos de resultado:
Invoking app.lambda_handler (python3.9) START RequestId: 5434c093-7182-4012-9b06-635011cac4f2 Version: $LATEST "Hello from SAM and the CDK!" END RequestId: 5434c093-7182-4012-9b06-635011cac4f2 REPORT RequestId: 5434c093-7182-4012-9b06-635011cac4f2 Init Duration: 0.32 ms Duration: 177.47 ms Billed Duration: 178 ms Memory Size: 128 MB Max Memory Used: 128 MB