Ich habe den Inhalt, den ich beim Ausprobieren erstellt habe, im folgenden Repository belassen mitsuya-saida/clover-sample
Abhängig | Lizenz |
---|---|
clover | Apache 2.0 license |
bmuschko/gradle-clover-plugin | Apache 2.0 license |
Fügen Sie Gradle-Clover-Plugin zu Abhängigkeiten in Buildscript hinzu, wie unten gezeigt
buildscript {
dependencies {
classpath 'com.bmuschko:gradle-clover-plugin:2.1.3'
}
}
Hinzufügen von Einstellungen zum Anwenden des Plugins
apply plugin: 'com.bmuschko.clover'
Klee zu Abhängigkeiten hinzugefügt
dependencies {
clover 'org.openclover:clover:4.2.0'
}
Beschreiben Sie die Kleeeinstellungen
clover {
report {
html = true
}
}
Das endgültige build.gradle des mit Spring boot erstellten Projekts lautet wie folgt
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'
}
Bitte
Der Test wird mit dem folgenden Befehl ausgeführt und die Coverage-Datei wird ausgegeben.
$ gradle clean cloverGenerateReport
Da der HTML-Bericht im Build-Ergebnis generiert wird, sehen Sie ihn sich mit einem Browser an Bei diesem Projekt befindet es sich im folgenden Pfad
clover-sample/build/reports/clover/index.html
Wenn man den Browser betrachtet, sieht es so aus
Die verfügbaren Befehle lauten wie folgt
Befehl | Verwendung |
---|---|
cloverGenerateReport | Test- und Ausgabeabdeckung ausführen |
cloverAggregateReports | Aggregierte Testergebnisse für Projekte mit mehreren Modulen (ich bin mir nicht sicher, weil ich es nie verwendet habe) |
Versuchen Sie, die Hauptfunktion, Getter und Setter von der Abdeckung auszuschließen
Geben Sie die Abdeckung aus, indem Sie Folgendes in die Kleeeinstellungen schreiben
clover {
contexts {
method {
name = 'main'
regexp = 'public static void main\\(String\\[\\] args\\).*'
}
}
report {
html = true
filter = 'main,property'
}
}
Recommended Posts