Cucumber - 1.4 Les trois étapes clés de l'automatisation BDD
Cette leçon présente les trois étapes essentielles pour automatiser des tests en BDD avec Cucumber. Ces étapes sont les fichiers feature, les définitions d'étapes et les runners. Ensemble, elles permettent de décrire, relier et exécuter les tests.
Les fichiers feature
Le premier élément est le fichier feature. Il est écrit en français, pour que chaque membre de l'équipe puisse comprendre facilement ce qui est testé.
Ces fichiers sont des fichiers texte dont l'extension est feature. Des exemples seront présentés dans la leçon suivante.
Les définitions d'étapes
Les définitions d'étapes, ou step definitions, sont des méthodes écrites dans un langage de programmation comme Java. Elles décrivent comment chaque étape doit être exécutée.
Chaque définition est associée à une expression régulière. Cette expression permet de la relier automatiquement à l'étape correspondante du fichier feature. Une définition peut aussi contenir des assertions, qui vérifient le comportement attendu.
Les runners
Le runner lance les tests. Il peut exécuter tous les tests, un scénario spécifique ou même une seule fonctionnalité. Il peut aussi générer des rapports détaillés avec les résultats.
En résumé
Cucumber est un outil de test automatique. Il utilise des fichiers feature pour décrire le comportement attendu, des définitions d'étapes pour exécuter chaque étape, et des runners pour lancer les tests et produire des rapports. Les leçons suivantes montrent ces étapes avec des exemples concrets.
Points clés
- Les fichiers feature décrivent le comportement dans un langage compréhensible par l'équipe.
- Les définitions d'étapes sont des méthodes codées, par exemple en Java.
- Une expression régulière relie chaque étape à sa définition.
- Les runners exécutent les tests et génèrent des rapports détaillés.
- Les assertions vérifient que le comportement est conforme à l'attendu.
Questions fréquentes
Pourquoi écrire les fichiers feature en français ?
Ils doivent être compris par toute l'équipe, et pas seulement par les développeurs.
Comment une étape est-elle reliée à son code ?
Chaque définition est associée à une expression régulière, qui retrouve automatiquement l'étape correspondante dans le fichier feature.
Peut-on lancer un seul scénario ?
Oui. Le runner peut exécuter tous les tests, un scénario spécifique ou une seule fonctionnalité.