BDD - WordPress.com · BDD Behavior driven development Lunch & Learn 24/03/2016 Charlotte Cavalier,...

Post on 08-Oct-2020

3 views 0 download

Transcript of BDD - WordPress.com · BDD Behavior driven development Lunch & Learn 24/03/2016 Charlotte Cavalier,...

BDD Behavior driven development

Lunch & Learn

24/03/2016

Charlotte Cavalier, Christophe Pont

1

Qu’est-ce que le BDD ?

Workflow

Outils

Cucumber

2

Qu’est-ce que BDD ? ”Plus” que du TDD

3

Workflow de developpement “classique”

Le BO donne ses

besoins au BA Le BA écrit le

recueil des

exigences

Le développeur

traduit les exigences

en logiciel

Le testeur traduit les

exigences en scénarii

Le logiciel est

traduit en

documentation

fonctionnelle et

technique 4

Workflow de developpement “classique”

Le BO donne ses

besoins au BA Le BA écrit le

recueil des

exigences

Le développeur

traduit les exigences

en logiciel

Le testeur traduit les

exigences en scénarii

Le logiciel est

traduit en

documentation

fonctionnelle et

technique 5

Workflow de développement en BDD

Le BO et le BA ont

une conversation à

propos de ce dont il

a besoin

Le BA, le développeur et le

testeur élaborent les

exigences ensemble

Ils définissent les

exigences en

scénarios structurés

en langage humain

Les scénarios

guident le

développeur et

servent de tests

automatisés

Le testeur utilise ces

scénarios comme base

pour ses tests

Les tests automatisés fournissent un retour sur

l’avancement et aident à la documentation de l’application 6

Workflow Les spécifications sont écrites collaborativement

Les spécifications utilisent un langage commun

Les spécifications exécutables fournissent un feedback rapide

7

Workflow BDD Application passagers réguliers Objectif : Encourager les voyageurs à voler avec Cap Airlines plus souvent en leur permettant d’accumuler des Points de Passagers Réguliers qu’ils peuvent dépenser dans des vols moins chers.

Objectifs /

Business

goal

Gagner des points des vols effectués

Dépenser des points en réservant

Capacités /

Capabilities

Voir le solde des points actuel

Voir les points nécessaires pour accéder à la classe supérieure

Calculer les points nécessaires pour une destination donnée

Fonctionnalités

Consulter les points gagnés

Gagner des points en dépensant chez des partenaires

8

Workflow BDD Calculer les points nécessaires pour une destination donnée En tant que voyageur Je veux savoir de combien de points j’ai besoin pour aller à une destination donnée Afin de prévoir mon prochain voyage avec Cap Airlines

Fonctionnalité

Critère d’acceptation - 2 points par kilomètre - Les membres peuvent calculer les points nécessaires sur leur page d’accueil

Critère

d’acceptation

Critère

d’acceptation

automatisé

9

Workflow BDD

Critère

d’acceptation

automatisé

Test

d’acceptation

automatisé

10

Workflow BDD

Test

d’acceptation

automatisé

Code

applicatif

11

Et ensuite ?

Serenity

12

Et ensuite ?

13

Et ensuite ?

14

Outils JBehave

Spock

Serenity/Thucydides

Cucumber

15

Cucumber Après le 3 Amigos

1 fichier de features pour décrire les User Stories

Génération de Guidelines de rédaction des tests

Reporting + Living documentation

Intégration Maven

16

Merci de votre

attention

17

Références Blog technique (sujet BDD)

http://blog.soat.fr/2011/06/introduction-au-behavior-driven-development/

BDD in action (Devoxx)

https://www.youtube.com/watch?v=igk3H2DWz7k

Projet Serenity/Cucumber

https://github.com/serenity-bdd/serenity-articles/tree/master/introduction-to-serenity-with-cucumber/src/samples/etsy-tester

18