J'ai laissé le contenu créé lorsque je l'ai essayé dans le référentiel suivant mitsuya-saida/clover-sample
| Dépendant | Licence | 
|---|---|
| clover | Apache 2.0 license | 
| bmuschko/gradle-clover-plugin | Apache 2.0 license | 
Ajoutez gradle-clover-plugin aux dépendances dans buildscript comme indiqué ci-dessous
buildscript {
	dependencies {
		classpath 'com.bmuschko:gradle-clover-plugin:2.1.3'
	}
}
Ajout de paramètres pour appliquer le plugin
apply plugin: 'com.bmuschko.clover'
Ajout du trèfle aux dépendances
dependencies {
	clover 'org.openclover:clover:4.2.0'
}
Décrire les paramètres du trèfle
clover {
	report {
		html = true
	}
}
Le build.gradle final du projet créé avec Spring Boot est le suivant
buildscript {
	ext {
		springBootVersion = '1.5.8.RELEASE'
	}
	repositories {
		mavenCentral()
	}
	dependencies {
		classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
		classpath 'com.bmuschko:gradle-clover-plugin:2.1.3'
	}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'com.bmuschko.clover'
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
	mavenCentral()
}
clover {
	report {
		html = true
		filter = 'main'
	}
}
dependencies {
	compile('org.springframework.boot:spring-boot-starter-web')
	compileOnly('org.projectlombok:lombok')
	testCompile('org.springframework.boot:spring-boot-starter-test')
	clover 'org.openclover:clover:4.2.0'
}
S'il vous plaît
Le test est exécuté par la commande suivante et le fichier de couverture est sorti.
$ gradle clean cloverGenerateReport
Puisque le rapport html est généré dans le résultat de la construction, jetez-y un œil avec un navigateur Dans le cas de ce projet, il se situe dans le chemin suivant
clover-sample/build/reports/clover/index.html
En regardant le navigateur, cela ressemble à ceci

Les commandes disponibles sont les suivantes
| Commande | Utilisation | 
|---|---|
| cloverGenerateReport | Exécuter le test et la couverture de sortie | 
| cloverAggregateReports | Résultats d'exécution de test agrégés pour les projets avec plusieurs modules (je ne suis pas sûr car je ne l'ai jamais utilisé) | 
Essayez d'exclure la fonction principale, getter, setter de la couverture
Couverture de sortie en écrivant ce qui suit dans les paramètres de trèfle
clover {
	contexts {
		method {
			name = 'main'
			regexp = 'public static void main\\(String\\[\\] args\\).*'
		}
	}
	report {
		html = true
		filter = 'main,property'
	}
}

Recommended Posts