Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Mockito. Ecrire des tests unitaires est devenu simple.

dgageot
September 26, 2011
390

Mockito. Ecrire des tests unitaires est devenu simple.

dgageot

September 26, 2011
Tweet

Transcript

  1. David Gageot CTO Algodeal.com «The Crowd Sourced Quant Hedge Fund»

    @dgageot javabien.net Monday, September 26, 11
  2. 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. Fini... Monday, September 26, 11
  3. « Objet passé en argument mais jamais utilisé » Dummy

    object « Implémentation simplifiée suffisante pour les tests » Fake Object Stub « Réponses pré-programmées et parfois une mémoire » Mock « Contrat de collaboration » Monday, September 26, 11
  4. Pas de NullPointerException. Indépendant de l’évolution constructeur. Fonctionne avec les

    interfaces et les classes. Moins de tests qui changent quand le code change Plus robuste Pas besoin de changer le code pour le rendre testable Dummy avec Mockito Monday, September 26, 11
  5. « Implémentation simplifiée suffisante pour les tests » Fake Object

    L’implémentation simplifiée peut être +/- complexe : HashMap pour une base clef/valeur. Base de données mémoire pour remplacer mysql. Monday, September 26, 11
  6. 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 code pour le rendre testable Plus facile à maitriser Monday, September 26, 11
  7. Stub avec Mockito Pas besoin de classe de test Moins

    sensible aux changements Monday, September 26, 11
  8. Mock « Vérification de comportement et d'interactions » Pas besoin

    de classe de test Moins de tests qui changent quand le code change Pas besoin de changer le code pour le rendre testable Monday, September 26, 11
  9. Mock « Vérification de comportement et d'interactions » Pas besoin

    de classe de test Moins de tests qui changent quand le code change Pas besoin de changer le code pour le rendre testable Monday, September 26, 11
  10. Pas besoin de changer le code pour le rendre testable

    Pas d’ implémentation classe pour les tests Moins de tests qui changent quand le code change Robuste Lisible Compact Monday, September 26, 11
  11. Beaucoup d’autres fonctionnalités Mocks partiels pour remplacer certaines méthodes d’un

    vrai objet. Syntaxe BDD (given/when/then). Matchers. ... Monday, September 26, 11
  12. David Gageot CTO Algodeal.com «The Crowd Sourced Quant Hedge Fund»

    @dgageot javabien.net Monday, September 26, 11