gradle build正在創建聲納亞軍拾取的jacoco報告。將聲納結果推送到聲納服務器後,即使所有測試成功運行,也會顯示單元測試覆蓋率,但單元測試成功率爲0。沒有單元測試成功報告聲納
15:52:36.087 INFO - Source dirs: /poc-sonar/src/main/java
15:52:36.087 INFO - Test dirs: /poc-sonar/src/test/java, /Volumes/Disk/Development/poc-sonar/src/test/groovy
15:52:36.088 INFO - Binary dirs: /poc-sonar/build/classes/main
這提高了第一個問題:在聲納亞軍日誌我看到下面的項目報告源和類場所
尋找是否有聲納看到分析編譯測試類?
再往下數:
15:52:37.435 INFO - Sensor JaCoCoSensor...
15:52:37.445 INFO - Analysing /poc-sonar/build/jacoco/test.exec
15:52:37.546 INFO - No information about coverage per test.
15:52:37.548 INFO - Sensor JaCoCoSensor done: 113 ms
15:52:38.105 INFO - Execute decorators...
15:52:38.580 INFO - Store results in database
Jacoco已經拿起test.exec
文件,但報告"No information about coverage per test"
是什麼日誌語句是什麼意思?聲納服務器實際上暴露了正確的覆蓋範圍!這是Sonar報告失敗測試成功的指標嗎?什麼是缺少用於獲取單元
Unit Tests Coverage
50,0%
50,0% line coverage
Unit test success
0 tests
全gradle這個build.script:
ext {
spockVersion = '0.7-groovy-2.0'
groovyVersion = '2.2.1'
}
apply plugin: 'idea'
apply plugin: 'java'
apply plugin: 'groovy'
apply plugin: 'jacoco'
apply plugin: 'sonar-runner'
group = "poc"
version = "1.0.0-SNAPSHOT"
sourceCompatibility = 1.7
targetCompatibility = 1.7
repositories {
maven {
credentials {
username "${artifactoryUsername}"
password "${artifactoryPassword}"
}
url "${artifactoryContextUrl}"
}
}
dependencies {
testCompile "junit:junit-dep:4.11"
testCompile "org.codehaus.groovy:groovy-all:$groovyVersion"
testCompile "org.spockframework:spock-core:$spockVersion"
}
tasks.withType(Test) { task ->
jacoco {
destinationFile = file("$buildDir/jacoco/${task.name}.exec")
}
}
sonarRunner {
sonarProperties {
property 'sonar.projectName', rootProject.name
property 'sonar.projectDescription', rootProject.name
// sonar server and database
property "sonar.host.url", sonarHostUrl
property "sonar.jdbc.url", sonarJdbcUrl
//property "sonar.jdbc.driverClassName", "com.mysql.jdbc.Driver"
property "sonar.jdbc.username", sonarJdbcUsername
property "sonar.jdbc.password", sonarJdbcPassword
property 'sonar.sourceEncoding', 'UTF-8'
}
}
tasks.sonarRunner.dependsOn = []
通過日誌去一次經過我發現多了一個可疑的警告: '16:31:18.438 WARN - 未發現報告路徑:/ POC-聲納/建設/聲納/建設/萬無一失-reports' 聲納亞軍正在錯誤的地方尋找測試報告文件。問題是如何將Sonar runner配置爲查看'$ project.buildDir/test-results'這是測試報告輸出的默認值? –