Skip to main content

ADR 007 : Adoption de JUnit 5 pour les tests unitaires

Statut

info

Accepté

Contexte

L'application actuelle utilise JUnit 4 pour les tests unitaires. La mise à jour vers JUnit 5 est envisagée pour bénéficier des nouvelles fonctionnalités et d'une meilleure extensibilité.

Décision

Nous avons décidé d'adopter JUnit 5 pour tous les tests unitaires.

  • Nouvelles fonctionnalités : JUnit 5 offre une architecture modulaire, des annotations avancées, et un support amélioré pour les tests paramétrés.
  • Compatibilité : JUnit 5 est compatible avec les technologies modernes comme Quarkus et Vert.x, facilitant l'intégration avec les nouvelles parties de l'application.
  • Extensibilité : JUnit 5 offre une meilleure extensibilité avec ses extensions API.

Conséquences

  • ✅ Avantages :

    • Amélioration de la qualité des tests grâce aux nouvelles fonctionnalités.
    • Meilleure gestion des tests paramétrés et conditionnels.
    • Extensibilité accrue pour les besoins futurs.
  • 🚫 Inconvénients :

    • Nécessité de migrer les tests existants de JUnit 4 vers JUnit 5.
    • Courbe d'apprentissage pour l'équipe de développement.

💡 Alternatives Considérées

  • Rester sur JUnit 4 : Réduction des efforts de migration, mais ne pas bénéficier des nouvelles fonctionnalités et de l'extensibilité offerte par JUnit 5.
  • TestNG : Une autre alternative populaire, mais nécessitant une refonte plus importante et une courbe d'apprentissage différente.