16
Développement piloté par les tests de l’extérieur vers l’intérieur Vincent Tencé @testinfected http://noncomplexstuff.com

Développement piloté par les tests, de l'extérieur vers l'intérieur

Embed Size (px)

Citation preview

Développement piloté par les tests

de l’extérieur vers l’intérieurVincent Tencé

@testinfectedhttp://noncomplexstuff.com

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

D’abord le scénario

Pers

isten

ce

Time

User

Int

erfa

ce

Mail

PaymentShipment

Test

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Puis le domaine

Pers

isten

ce

Time

User

Int

erfa

ce

Mail

PaymentShipment

Test

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Les tests nous guident

Pers

isten

ce

Time

User

Int

erfa

ce

Mail

PaymentShipment

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Ensuite les données

Pers

isten

ce

Time

User

Int

erfa

ce

Mail

PaymentShipment

Test

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Enfin la vue

Pers

isten

ce

Time

User

Int

erfa

ce

Mail

PaymentShipment

Test

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Au final

Pers

isten

ce

Time

User

Int

erfa

ce

Mail

PaymentShipment

Test

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Unit

Integration

Acceptance

System

La stratégie

Cus

tom

ers T

ests

Developers Tests

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

T.D.D.

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Étape par étape

1. Écrire un test

2. Le voir échouer

3. Ajuster le message d’erreur

4. Écrire le code le plus simple

5. Rouler tous les tests

6. “Refactoriser”

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Un réseau d’objets

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Tester en isolation

mock S

SATest

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Mock Objects

• Reproduisent le comportement d’objets réels de manière controllée

• L’accent est mis sur l’interaction entre les objets

Vincent Tencé - Groupe des utilisateurs Java de Montréal - 29 septembre 2011

Ports and Adapters

API

Pers

isten

ce

Time

User

Int

erfa

ce

adapte

r

Bons tests !

TDDAll CODE IS GUILTY

UNTIL PROVEN INNOCENT