

Ceci est le guide du développeur du AWS CDK v2. L'ancien CDK v1 est entré en maintenance le 1er juin 2022 et a pris fin le 1er juin 2023.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Commencer à tester localement
<a name="testing-locally-getting-started"></a>

Cette rubrique décrit ce dont vous avez besoin pour utiliser la CLI AWS SAM avec des applications AWS CDK et fournit des instructions pour créer et tester localement une application AWS CDK simple.

## Prérequis
<a name="testing-locally-getting-started-prerequisites"></a>

Pour effectuer un test local, vous devez installer la CLI AWS SAM. Voir [Installer la CLI AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/getting_started.html) pour les instructions d'installation.

## Création et test local d'une application AWS CDK
<a name="testing-locally-getting-started-tutorial"></a>

Pour tester localement une application AWS CDK à l'aide de la CLI AWS SAM, vous devez disposer d'une application AWS CDK contenant une fonction Lambda. Suivez les étapes ci-dessous pour créer une application AWS CDK de base avec une fonction Lambda. Pour plus d'informations, consultez la section [Création d'une application sans serveur à l'aide du AWS CDK](https://docs.aws.amazon.com/cdk/latest/guide/serverless_example.html) dans le Guide du * AWS développeur du Cloud Development Kit (AWS CDK)*.<a name="testing-locally-getting-started-tutorial-init"></a>

 **Étape 1 : Création d'une application AWS CDK**   
Pour ce didacticiel, initialisez une application AWS CDK qui utilise. TypeScript  
Commande à exécuter :  

```
$ mkdir cdk-sam-example
$ cd cdk-sam-example
$ cdk init app --language typescript
```<a name="testing-locally-getting-started-tutorial-lambda"></a>

 **Étape 2 : ajouter une fonction Lambda à votre application**   
Remplacez le code dans `lib/cdk-sam-example-stack.ts` par ce qui suit :  

```
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'),
    });
  }
}
```<a name="testing-locally-getting-started-tutorial-code"></a>

 **Étape 3 : Ajoutez votre code de fonction Lambda**   
Créez un répertoire nommé `my_function`. Dans ce répertoire, créez un fichier nommé `app.py`.  
Commande à exécuter :  

**Example**  

```
$ mkdir my_function
$ cd my_function
$ touch app.py
```

```
$ mkdir my_function
$ cd my_function
$ type nul > app.py
```

```
$ mkdir my_function
$ cd my_function
$ New-Item -Path "app.py”
```
Ajoutez le code suivant à `app.py`:

```
def lambda_handler(event, context):
    return "Hello from SAM and the CDK!"
```<a name="testing-locally-getting-started-tutorial-function"></a>

 **Étape 4 : Testez votre fonction Lambda**   
Vous pouvez utiliser la CLI AWS SAM pour appeler localement une fonction Lambda que vous définissez dans une application AWS CDK. Pour ce faire, vous avez besoin de l'identifiant de construction de la fonction et du chemin d'accès à votre AWS CloudFormation modèle synthétisé.  
Exécutez la commande suivante pour revenir au `lib` répertoire :  

```
$  cd ..
```
 **Commande à exécuter :**   

```
$  cdk synth --no-staging
```

```
$  sam local invoke MyFunction --no-event -t ./cdk.out/CdkSamExampleStack.template.json
```
 **Exemple de sortie :**   

```
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
```