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.