Mockito Chti JUG

2 610 vues

Publié le

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

Aucun téléchargement
Vues
Nombre de vues
2 610
Sur SlideShare
0
Issues des intégrations
0
Intégrations
267
Actions
Partages
0
Téléchargements
58
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Mockito Chti JUG

  1. 1. Ecrire des tests unitaires est devenu simple.
  2. 2. David Gageot CTO Algodeal.com «The Crowd Sourced Quant Hedge Fund» @dgageot javabien.net
  3. 3. Dans la salle : Tests unitaires ? Couverture >50% ? TDD ? Mocks ? Photo: http://www.flickr.com/photos/91082225@N00/3271601712
  4. 4. Fini... Le code modifié pour être testable. Les frameworks de mocks verbeux. La réécriture des tests quand le code change. L'écriture de helpers/builders rien que pour les tests.
  5. 5. Dummy object « Objet passé en argument mais jamais utilisé » Fake Object « Implémentation simplifiée suffisante pour les tests » Stub « Réponses pré-programmées et parfois une mémoire » Mock « Contrat de collaboration »
  6. 6. Le match Mocks à la main Contre Photo: http://lh4.ggpht.com/_hViQXCC13cs/Sg21-wh7znI/AAAAAAAAA48/Piztq3c9cwE/s288/DSCN3658.JPG
  7. 7. Round 01 - Les Dummy objects
  8. 8. Dummy object « Objet passé en argument mais jamais utilisé »
  9. 9. Dummy avec Mockito Pas de NullPointerException. Indépendant de l’évolution constructeur. Fonctionne avec les interfaces et les classes. Pas Moins de besoin de tests qui Plus changer le robuste changent code pour le quand le code rendre testable change
  10. 10. Round 02 - Les Fakes
  11. 11. Fake Object « Implémentation simplifiée suffisante pour les tests » L’implémentation simplifiée peut être +/- complexe : HashMap pour une base clef/valeur. Base de données mémoire pour remplacer mysql.
  12. 12. Fake avec Mockito Pas le rôle d’un framework de Mocks. Sauf si le fake n’a pas de mémoire : Pas besoin de changer le Plus facile à code pour le maitriser rendre testable
  13. 13. Round 03 - les Stubs
  14. 14. Stub « Réponses pré-programmées et parfois une mémoire »
  15. 15. Stub avec Mockito Pas besoin de Moins classe de test sensible aux changements
  16. 16. Assertion plutôt que Vérification
  17. 17. Round 04 - les Mocks
  18. 18. Mock « Vérification de comportement et d'interactions » Pas Moins de besoin de tests qui Pas besoin de changer le classe de test changent code pour le quand le code rendre testable change
  19. 19. Mock Tester la gestion des exceptions.
  20. 20. Mock Tester les appels multiples.
  21. 21. Mock Capture de paramètres.
  22. 22. Robuste Lisible Compact Moins de Pas besoin de Pas d’ tests qui implémentation changent changer le code pour le classe pour quand le code les tests change rendre testable
  23. 23. Kung Fu avec Mockito. Photo: http://upload.wikimedia.org/wikipedia/commons/d/dd/Wooden-dummy.jpg
  24. 24. Réponses multiples
  25. 25. Annotations
  26. 26. Stubs multi-niveaux
  27. 27. Beaucoup d’autres fonctionnalités Mocks partiels pour remplacer certaines méthodes d’un vrai objet. Syntaxe BDD (given/when/then). Matchers. ...
  28. 28. Merci. Questions / Réponses
  29. 29. David Gageot CTO Algodeal.com «The Crowd Sourced Quant Hedge Fund» @dgageot javabien.net

×