Mocks Vs Stubs

Emilien Pecoul
@ouarzy

Quelle genre de testeur êtes vous?
Mocks aren’t Stubs

http://martinfowler.com/articles/mocksArentStubs.html
Vocabulaire

http://xunitpatterns.com/
Vocabulaire
• Test Double : objet étant utilisé à la place d’un autre dans le but de
tester
• Dummy : est passé en paramèt...
Mock Vs Stub
Mock Vs Stub
Comment Vs Quoi

Comportement Vs Etat

London style Vs Chicago style
Mock

Stub

Initialisation

Simple et
indépendante

Complexe si objet de
haut niveau

Isolation

Bug = 1 seul test
rouge

...
Mock

BDD = TDD avec mocks
Mock => Comportement => Behaviour Driven Development
Alors quel genre de testeur êtes vous?
CQRS

• Mocks for commands
• Stubs for queries

Mark Seeman

=>Valider une Query avec un Mock est compliqué!

http://blog....
Merci!
2003

2013
Emilien Pecoul
@ouarzy

Questions?
Prochain SlideShare
Chargement dans…5
×

Mocks vs stubs

663 vues

Publié le

Connaissez vous la nuance entre un mock et un stub?
Mieux: êtes vous conscient que l'utilisation de l'un ou de l'autre influe sur votre style de code?

Alors découvrez ce talk pour mieux savoir quel genre de testeur vous êtes!

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
663
Sur SlideShare
0
Issues des intégrations
0
Intégrations
94
Actions
Partages
0
Téléchargements
8
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Mocks vs stubs

  1. 1. Mocks Vs Stubs Emilien Pecoul @ouarzy Quelle genre de testeur êtes vous?
  2. 2. Mocks aren’t Stubs http://martinfowler.com/articles/mocksArentStubs.html
  3. 3. Vocabulaire http://xunitpatterns.com/
  4. 4. Vocabulaire • Test Double : objet étant utilisé à la place d’un autre dans le but de tester • Dummy : est passé en paramètre mais jamais effectivement utilisé • Fake : a une implémentation fonctionnelle simplifiée pour les tests, qui ne conviendra pas en production (base de données de tests en mémoire par exemple) • Stubs : fourni des réponses prédictibles aux appels durant le test. Ce qui n’est pas testé ne sera pas implémenté. Un stub peut également enregistrer des informations tel que la liste des messages envoyés pour un messager. • Mocks : est un objet préprogrammé avec des attentes sur les appels qu’il est censé recevoir
  5. 5. Mock Vs Stub
  6. 6. Mock Vs Stub Comment Vs Quoi Comportement Vs Etat London style Vs Chicago style
  7. 7. Mock Stub Initialisation Simple et indépendante Complexe si objet de haut niveau Isolation Bug = 1 seul test rouge Bug = plusieurs tests rouges Couplage Fortement couplé à l’implémentation Faiblement couplé à l’implémentation Design (TDD) Méthodes qui agissent sur un objet Méthodes qui retournent des valeurs POO « Tell don’t Ask », Demeter Parfois retourne valeur seulement pour test
  8. 8. Mock BDD = TDD avec mocks Mock => Comportement => Behaviour Driven Development
  9. 9. Alors quel genre de testeur êtes vous?
  10. 10. CQRS • Mocks for commands • Stubs for queries Mark Seeman =>Valider une Query avec un Mock est compliqué! http://blog.ploeh.dk/2013/10/23/mocks-for-commands-stubs-for-queries/
  11. 11. Merci! 2003 2013 Emilien Pecoul @ouarzy Questions?

×