Récemment, je suis tombé sur un article intéressant sur Junit et l’annotation @Rule que je ne connaissais pas.Dans cet article, je vais vous présenter le principe de fonctionnement.
En faite, dans les version précédentes de Junit, on était obligé de déclarer @SetUp et @TearDown pour chaque classe de test.Dans les versions récentes de Junit, il est maintenant possible de définir ses propres rules avec l’annotation @Rule.Autrement dit, durant le déroulement de votre test, vous allez pouvoir agir dessus.
Pour vous donnez une idée, voici quelques exemples de Rules standard :
- ExpectedException: vérifie qu’une exception est levée (généralise @Test(expected=...) à une classe de test)
- Timeout: vérifie qu’un test ne dépasse pas une certaine durée (généralise @Test(timeout=...) à une classe de test
- ExternalResource: base pour gérer une ressource: ouvrir/fermer une connexion par exemple
- TemporaryFolder: créer/détruit un dossier temporaire pour les tests qui produisent des fichiers
- TestWatchman: base pour observer l’exécution d’un test sans intervenir
- TestName: donne accès au nom du test depuis la méthode de test
- Verifier: base pour vérifier l’état de l’objet de test
Voici les deux liens qui m’ont permis de découvrir cette nouvelle notion :
http://blog.objetdirect.com/divers/quoi-de-neuf-chez-junit
http://www.dzone.com/links/r/junit_rules_3.html
Aucun commentaire:
Enregistrer un commentaire