behave,Pour ce TP, utilisez la branch suivante :
git checkout 2_starting_tests
Sur cette branche, il y a maintenant :
tests/test_functional/ qui contient le squelette d'un test fonctionnel.tests/test_architecture/ qui contient un template de test d'architecture.tests/tests_pyramid.sh qui permet de mesurer la pyramide de tests.Dans cette partie, nous allons rédiger un test fonctionnel avec l'outil Behave.
Pour cela, il y a un squelette de test fonctionnel à compléter dans tests/test_functional/features/training_workflow.feature.
Le test correspondant se trouve dans tests/test_functional/features/steps/training_workflow.py.
Compléter le squelette de test fonctionnel :
uv run behave tests/test_functional/features.test.Compléter la chaîne d'intégration continue avec une étape qualite afin de
pytest en rajoutant l'argument --cov,uv run pytest --cov=formation_mlops_2/ tests/test_unit/ -vv -p no:warnings./tests/tests_pyramid.shpermission denied, lancer chmod +x tests/tests_pyramid.sh
Grâce aux agents de code, nous sommes capables d'écrire des tests complexes qui permettent de valider le respect de standards d'architecture.
Dans le dossier tests/test_architecture, ajouter un test qui valide que l'ensemble des écritures avec la méthode to_csv utilisent bien l'argument index=False qui évite d'écrire l'index comme colonne.
N'hésitez pas à demander à un assistant de code pour vous aider :
Lancer le test avec la commande
uv run pytest tests/test_architecture/test_to_csv_called_with_index_false.py
Dans la pratique, vous pouvez implémenter un test d'architecture pour chaque ADR, bug technique rencontré, standard.
Les instructions du tp suivant sont ici