Eloquent JUnit: from Matchers to Builders

  1. Contexte
  2. The test: verbose
  3. The matcher: consise
  4. The Builder: eloquent
  5. Améliorations
  6. Conclusion
  7. Sources

Context

Je devais faire une évolution dans une portion de code legacy, qui manipulait une grappe d’objets. En fait, le code générait des instances de la classe Demande (plusieurs milliers) à partir d’un ResultSet.

La particularité de la grappe objet était que, la Demande avait :

  • de nombreux attributs, comme des dates ou des montants,
  • mais aussi d’autres objets: depuis la racine Demande il y avait 9 niveaux, et certain de ses enfants avaient plus de 20 attributs.

J’ai donc commencé par écrire des tests de non régression…

Lire la suite