Gradle : Comment générer des rapport de couverture de test d'Intégration à l'aide de jacoco
Je suis nouveau sur gradle. Je suis en utilisant le code ci-dessous. Mais il génère une couverture pour l'unité des cas de test. Mais il n'a pas de générer pour l'intégration des cas de test. J'ai mon test de classes dans le package src/test/java.
test {
dependsOn jettyRunWar
ignoreFailures true
finalizedBy jettyStop
}
apply plugin: 'jacoco'
jacocoTestReport {
group = "Reporting"
description = "Generate Jacoco coverage reports after running tests."
additionalSourceDirs = files(sourceSets.main.allJava.srcDirs)
}
OriginalL'auteur Veera | 2013-09-26
Vous devez vous connecter pour publier un commentaire.
Il semble que, ce que vous devez dire à construire.gradle est l'endroit où sont vos Intégration tests (c'est à dire le dossier contenant ces IL des tests) à l'aide de sourceSets. Dans mon cas, j'ai de la source sous src/java (au lieu de src/main/java - gradle par défaut).. mes tests unitaires (Junit) en cours de test/java dossier, et mes tests d'intégration sous src/java-dossier de test.
Ensuite, j'ai integrationTest tâche que ... que vous pouvez modifier comme vous pourriez ne pas avoir cleanTest (tâche personnalisée que j'ai créé), de sorte que vous pouvez ignorer que dependsOn... je pense que dans votre cas, vous allez utiliser quelque chose comme jettyStart que vous l'utilisez pour CELA des tests (à partir du conteneur pour l'exécuter les tests et puis finalizedBy fonction pour arrêter la jetée .. plugin jetty)
VOIR ce post pour plus détaillée de la structure de sortie et le script que j'ai à ma fin. Im obtenir l' .exec pour les deux tests Unitaires (test.exec) et des tests de intergrationTest.exec.. mais je ne suis pas d'obtenir le jacoco.xml/jacocoHtml rapports pour les deux tests. J'ai aussi trouvé que, si je lance "gradle construction propre" (qui comprend l'appel à "test" de la tâche) et "gradle construction propre integrationTest" puis, plus tard, l'un remplace l'unité de données de tests dans build/test-dossier résultats et de construire/rapports/dossier de tests.
Jacoco Tests Unitaires et d'Intégration de la couverture individuelle et globale
NOTE: dans mon cas, jacocoTestReport est défini dans le global gradle init.d dossier dans l'une des communes gradle fichier. Cela nous aidera à ne pas inclure le même code pour tous /au niveau du projet de construction.gradle fichier.
OriginalL'auteur Arun Sangal