Bienvenue dans la troisième partie de « Exploration des déploiements sans serveur AWS avec CDK v2 ». Tout d'abord, j'aimerais vous remercier pour votre patience car il y a eu un petit écart depuis la partie 2. J'étais plongé dans l'étude et le travail sur des projets sans serveur au travail, ce qui m'a tenu à l'écart, mais je suis ravi de me remettre sur la bonne voie. et continuons notre exploration.
Dans les articles précédents, nous avons défini nos constructions et les avons déployées sur AWS. Aujourd’hui, nous allons nous concentrer sur une pratique essentielle : les tests. Des tests appropriés garantissent que nos déploiements fonctionnent comme prévu et peuvent nous éviter des problèmes potentiels.
Premiers pas avec les tests
Pour commencer, vous devrez ajouter pytest aux dépendances de votre projet (le fichier requirements.txt principal de notre pile).
pip install -r requirements.txt
Au sein de notre projet, naviguez vers le répertoire test, puis unit et ouvrez le fichier test_rss_lambda_ddb_socialshare_stack.py. Ce fichier de test généré automatiquement comprend un exemple de test.
Nous n'avons pas de construction SQS
dans notre pile, mais l'examen de l'exemple de test fournit un certain niveau d'informations sur la façon de tester une construction. Supprimons l'exemple de test généré automatiquement et créons notre propre test.Configuration de la fonction de test
Tout d'abord, créons une fonction réutilisable pour obtenir le modèle CloudFormation de la pile :
Test des propriétés de la table DynamoDB
Nous allons commencer par ajouter un test pour vérifier que la table
DynamoDB
Test des fonctions Lambda
Exécution de tests
pytest
dans le terminal :
================================================================================= test session starts ================================================================================= platform darwin -- Python 3.12.4, pytest-8.1.1, pluggy-1.4.0 rootdir: /Users/adrian/Developer/Projects/rss-lambda-ddb-socialshare plugins: typeguard-2.13.3 collected 2 items tests/unit/test_rss_lambda_ddb_socialshare_stack.py .. [100%] ================================================================================= 2 passed in 21.86s ==================================================================================
Vous trouverez ci-dessous le résultat que vous devriez recevoir :
ConclusionDans la troisième partie de notre série, nous avons appris comment tester nos constructions CDK. Dans le dernier volet, nous explorerons comment tester les fonctions Lambda localement.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!