Cucumber - 2.1 Découvrir le BDD avec Cucumber et Selenium
Le BDD, ou développement piloté par le comportement, décrit le comportement attendu d'une application avec des scénarios en langage naturel. Cucumber permet d'écrire ces scénarios et de les relier à du code Java. Cette leçon présente l'idée générale avant les exemples pratiques.
Pourquoi utiliser le BDD
Le BDD aide à mieux comprendre le comportement attendu d'une application. Il réduit les erreurs de communication entre les développeurs et les parties prenantes. Il augmente aussi la couverture des tests automatisés.
Les fichiers feature et les étapes
Un fichier feature décrit un scénario d'utilisation en langage naturel, avec des mots-clés qui indiquent le type de chaque étape. Chaque étape est associée à une step definition, c'est-à-dire à une méthode Java qui exécute l'action correspondante dans l'application.
Intégrer Selenium
Pour tester une application web, les step definitions peuvent appeler des méthodes Selenium. Selenium permet d'interagir avec les éléments de la page, afin de vérifier le comportement décrit dans le scénario.
En résumé
Le BDD décrit le comportement attendu avec des scénarios en langage naturel. Cucumber relie chaque étape à une méthode Java. Avec Selenium, ces étapes peuvent piloter une application web et ses éléments de page.
Points clés
- Le BDD décrit le comportement attendu avec un langage naturel.
- Il réduit les malentendus entre développeurs et parties prenantes.
- Un fichier feature contient les scénarios.
- Chaque étape est reliée à une step definition en Java.
- Selenium permet d'interagir avec les éléments d'une page web.
Questions fréquentes
Qu'est-ce qu'un scénario ?
C'est une description d'un usage de l'application, écrite en langage naturel, étape par étape.
Faut-il savoir programmer en Java pour commencer ?
Les step definitions sont écrites en Java dans ce cours. Quelques notions de base de Java sont donc utiles.
À quoi sert Selenium ici ?
Selenium permet aux step definitions d'agir sur les éléments de la page web, pour tester l'application automatiquement.