Rapports de test
Objectifs du chapitre :
- Comprendre l'importance des rapports de test dans le cycle de développement logiciel.
- Apprendre à générer des rapports de test avec JUnit.
- Découvrir comment visualiser et analyser les rapports de test dans différents outils et environnements.
- Explorer les bonnes pratiques pour utiliser les rapports de test pour l'amélioration continue.
17.1 Importance des rapports de test
Les rapports de test fournissent une vue d'ensemble des résultats des tests unitaires et des autres types de tests. Ils sont essentiels pour :
- Suivi de la qualité du code : Permettent de suivre les progrès et de détecter les régressions rapidement.
- Analyse des échecs : Aident à diagnostiquer les problèmes en fournissant des détails sur les tests échoués.
- Documentation : Servent de documentation sur les fonctionnalités testées et leurs résultats.
- Communication : Facilitent la communication entre les membres de l'équipe sur l'état des tests et la qualité du code.
17.2 Génération de rapports de test avec JUnit
JUnit lui-même ne génère pas directement des rapports de test sous forme de fichiers. Cependant, des outils de build comme Maven, Gradle, et des serveurs d'intégration continue comme Jenkins peuvent générer et gérer ces rapports.
Génération de rapports de test avec Maven :
Maven utilise le plugin Surefire pour exécuter les tests et générer des rapports. Par défaut, les rapports sont générés dans le répertoire target/surefire-reports.
Configuration du plugin Surefire dans pom.xml :
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<configuration>
<includes>
<include>**/*Test.java</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
...
</project>
Génération de rapports de test avec Gradle :
Gradle génère des rapports de test dans le répertoire build/reports/tests/test.
Configuration du plugin de test dans build.gradle :
plugins {
id 'java'
}
test {
reports {
junitXml.enabled = true
html.enabled = true
}
}
17.3 Visualisation et analyse des rapports de test
Visualisation des rapports avec Jenkins :
Jenkins peut générer et afficher des rapports de test JUnit grâce au plugin JUnit.
-
Installer le plugin JUnit :
- Allez dans
Manage Jenkins>Manage Plugins. - Recherchez
JUnitet installez le plugin.
- Allez dans
-
Configurer un job Jenkins :
- Ajoutez l'étape
Publish JUnit test result reportdans la configuration du job. - Spécifiez le chemin vers les fichiers de rapports de test (par exemple,
**/target/surefire-reports/*.xmlpour Maven ou**/build/test-results/test/*.xmlpour Gradle).
- Ajoutez l'étape
-
Analyser les résultats :
- Après l'exécution du job, cliquez sur le lien
Test Resultpour voir un résumé des tests. - Les rapports incluent le nombre de tests réussis, échoués, et ignorés, ainsi que les détails des échecs.
- Après l'exécution du job, cliquez sur le lien
Visualisation des rapports avec IntelliJ IDEA :
IntelliJ IDEA affiche les résultats des tests directement dans l'IDE.
-
Exécuter les tests :
- Faites un clic droit sur une classe de test ou un dossier contenant des tests et sélectionnez
Run 'Tests in ...'.
- Faites un clic droit sur une classe de test ou un dossier contenant des tests et sélectionnez
-
Analyser les résultats :
- La fenêtre de résultats de test affiche le statut des tests (succès, échec, ignoré).
- Cliquez sur les tests échoués pour voir les messages d'erreur et les traces de pile.
17.4 Bonnes pratiques pour utiliser les rapports de test
-
Automatiser la génération de rapports :
- Utilisez des outils de build et des serveurs d'intégration continue pour automatiser l'exécution des tests et la génération des rapports.
-
Analyser régulièrement les rapports :
- Intégrez l'analyse des rapports de test dans le processus de revue de code et les réunions d'équipe.
-
Traiter les échecs immédiatement :
- Ne laissez pas les tests échoués s'accumuler. Corrigez les problèmes dès qu'ils sont détectés.
-
Améliorer la couverture des tests :
- Utilisez les rapports pour identifier les parties du code qui ne sont pas suffisamment testées et ajoutez des tests supplémentaires.
-
Communiquer les résultats :
- Partagez les rapports de test avec toute l'équipe pour assurer une transparence sur la qualité du code et encourager la collaboration.
Résumé du chapitre :
- Les rapports de test sont essentiels pour suivre la qualité du code, analyser les échecs et documenter les fonctionnalités testées.
- JUnit s'intègre avec des outils de build comme Maven et Gradle pour générer des rapports de test.
- Jenkins permet de visualiser et d'analyser les rapports de test JUnit, fournissant des informations détaillées sur les résultats des tests.
- Suivre les bonnes pratiques pour l'utilisation des rapports de test garantit une amélioration continue et une communication efficace au sein de l'équipe.