2014-06-28 3 views
1

У меня возникли проблемы с настройкой градиента с помощью сонара и jacoco. Все работает отлично, за исключением покрытия кода. Я пробовал все безрезультатно.SonarQube не собирает покрытие кода

Вот мой build.gradle файл:

apply from: './dependencies.gradle' 

def langLevel = 1.8 

allprojects { 
    apply plugin: 'idea' 
    apply plugin: 'eclipse' 

    group 'pl.lodz.uml.sonda' 
    version '1.0.0' 
} 

subprojects { 
    apply plugin: 'java' 
    apply plugin: 'sonar-runner' 
    apply plugin: 'jacoco' 

    compileJava.options.encoding = 'UTF-8' 

    sourceCompatibility = langLevel 
    targetCompatibility = langLevel 

    repositories { 
    mavenLocal() 
    mavenCentral() 
    } 

    jacoco { 
    toolVersion = "0.7.0.201403182114" 
    } 

    sonarRunner { 
    sonarProperties { 
     property 'sonar.host.url', 'http://localhost:9000' 
     property 'sonar.login', 'admin' 
     property 'sonar.password', 'admin' 

     property 'sonar.jdbc.url', 'jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8' 
     property 'sonar.jdbc.driverClassName', 'com.mysql.jdbc.Driver' 
     property 'sonar.jdbc.username', 'sonar' 
     property 'sonar.jdbc.password', 'sonar' 

     property 'sonar.jacoco.reportPath', "${buildDir}/jacoco/test.exec" 
     property 'sonar.junit.reportsPath', "${buildDir}/test-results" 
    } 
    } 

    dependencies { 
    compile deps.spring.context 
    testCompile deps.test 
    } 
} 

project(':sonda-uml-common') { 
    dependencies { 

    } 
} 

project(':sonda-uml-integration') { 
    dependencies { 
    compile deps.spring.web 
    compile deps.javax.servlet 
    } 
} 

Вот выход из моей консоли, когда я бегу sonarRunner задача:

22:36:31: Executing external task 'sonarRunner'... 
:sonda-uml-integration:compileJava 
:sonda-uml-integration:processResources 
:sonda-uml-integration:classes 
:sonda-uml-integration:compileTestJava 
:sonda-uml-integration:processTestResources UP-TO-DATE 
:sonda-uml-integration:testClasses 
:sonda-uml-integration:test 
:sonda-uml-integration:sonarRunner 
22:36:37.780 INFO - Load batch settings 
22:36:37.911 INFO - User cache: C:\Users\Piotr\.sonar\cache 
22:36:37.919 INFO - Install plugins 
22:36:38.003 INFO - Install JDBC driver 
22:36:38.013 INFO - Create JDBC datasource for jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8 
22:36:38.954 INFO - Initializing Hibernate 
22:36:41.073 INFO - Load project settings 
22:36:41.123 INFO - Apply project exclusions 
22:36:41.157 WARN - 'sonar.dynamicAnalysis' is deprecated since version 4.3 and should no longer be used. 
22:36:41.312 INFO - ------------- Scan sonda-uml-integration 
22:36:41.317 INFO - Load module settings 
22:36:41.710 INFO - Loading technical debt model... 
22:36:41.718 INFO - Loading technical debt model done: 8 ms 
22:36:41.718 INFO - Loading rules... 
22:36:42.080 INFO - Loading rules done: 362 ms 
22:36:42.095 INFO - Configure Maven plugins 
22:36:42.148 INFO - Compare to previous analysis (2014-06-28) 
22:36:42.153 INFO - Compare over 30 days (2014-05-29, analysis of 2014-06-28 19:27:48.0) 
22:36:42.154 INFO - No quality gate is configured. 
22:36:42.277 INFO - Base dir: D:\projects\sonda-uml\sonda-uml-integration 
22:36:42.277 INFO - Working dir: D:\projects\sonda-uml\sonda-uml-integration\build\sonar 
22:36:42.277 INFO - Source dirs: D:\projects\sonda-uml\sonda-uml-integration\src\main\resources, D:\projects\sonda-uml\sonda-uml-integration\src\main\java 
22:36:42.278 INFO - Test dirs: D:\projects\sonda-uml\sonda-uml-integration\src\test\resources, D:\projects\sonda-uml\sonda-uml-integration\src\test\java 
22:36:42.279 INFO - Binary dirs: D:\projects\sonda-uml\sonda-uml-integration\build\classes\main, D:\projects\sonda-uml\sonda-uml-integration\build\resources\main 
22:36:42.279 INFO - Source encoding: windows-1250, default locale: pl_PL 
22:36:42.279 INFO - Index files 
22:36:42.341 INFO - 5 files indexed 
22:36:42.962 INFO - Quality profile for java: Sonar way 
22:36:42.974 INFO - Sensor JavaSquidSensor... 
22:36:43.022 INFO - Java Main Files AST scan... 
22:36:43.027 INFO - 4 source files to be analyzed 
22:36:43.628 INFO - 4/4 source files analyzed 
22:36:43.630 INFO - Java Main Files AST scan done: 608 ms 
22:36:43.634 INFO - Java bytecode scan... 
22:36:43.679 INFO - Java bytecode scan done: 45 ms 
22:36:43.680 INFO - Java Test Files AST scan... 
22:36:43.680 INFO - 1 source files to be analyzed 
22:36:43.683 INFO - Java Test Files AST scan done: 3 ms 
22:36:43.686 INFO - 1/1 source files analyzed 
22:36:43.690 INFO - Package design analysis... 
22:36:43.741 INFO - Package design analysis done: 51 ms 
22:36:43.795 INFO - Sensor JavaSquidSensor done: 821 ms 
22:36:43.796 INFO - Sensor QProfileSensor... 
22:36:43.828 INFO - Sensor QProfileSensor done: 32 ms 
22:36:43.829 INFO - Sensor InitialOpenIssuesSensor... 
22:36:43.840 INFO - Sensor InitialOpenIssuesSensor done: 11 ms 
22:36:43.841 INFO - Sensor ProfileEventsSensor... 
22:36:43.859 INFO - Sensor ProfileEventsSensor done: 18 ms 
22:36:43.859 INFO - Sensor ProjectLinksSensor... 
22:36:43.864 INFO - Sensor ProjectLinksSensor done: 5 ms 
22:36:43.864 INFO - Sensor VersionEventsSensor... 
22:36:43.941 INFO - Sensor VersionEventsSensor done: 77 ms 
22:36:43.941 INFO - Sensor FileHashSensor... 
22:36:43.942 INFO - Sensor FileHashSensor done: 1 ms 
22:36:43.942 INFO - Sensor CpdSensor... 
22:36:43.943 INFO - SonarEngine is used for java 
22:36:43.944 INFO - Cross-project analysis disabled 
22:36:43.963 INFO - Sensor CpdSensor done: 21 ms 
22:36:43.964 INFO - Sensor SurefireSensor... 
22:36:43.964 INFO - parsing D:\projects\sonda-uml\sonda-uml-integration\build\test-results 
22:36:44.021 INFO - Sensor SurefireSensor done: 57 ms 
22:36:44.021 INFO - Sensor JaCoCoSensor... 
22:36:44.024 INFO - Analysing D:\projects\sonda-uml\sonda-uml-integration\build\jacoco\test.exec 
22:36:44.043 WARN - Coverage information was not collected. Perhaps you forget to include debug information into compiled classes? 
22:36:44.043 INFO - Sensor JaCoCoSensor done: 22 ms 
22:36:44.341 INFO - Execute decorators... 
22:36:44.884 INFO - Store results in database 
22:36:45.051 INFO - ANALYSIS SUCCESSFUL, you can browse http://localhost:9000/dashboard/index/pl.lodz.uml.sonda:sonda-uml-integration 
22:36:45.161 INFO - Executing post-job class org.sonar.plugins.core.issue.notification.SendIssueNotificationsPostJob 
22:36:45.161 INFO - Executing post-job class org.sonar.plugins.core.batch.IndexProjectPostJob 
22:36:45.218 INFO - Executing post-job class org.sonar.plugins.dbcleaner.ProjectPurgePostJob 
22:36:45.225 INFO - -> Keep one snapshot per day between 2014-05-31 and 2014-06-27 
22:36:45.226 INFO - -> Keep one snapshot per week between 2013-06-29 and 2014-05-31 
22:36:45.226 INFO - -> Keep one snapshot per month between 2009-07-04 and 2013-06-29 
22:36:45.227 INFO - -> Delete data prior to: 2009-07-04 
22:36:45.231 INFO - -> Clean sonda-uml-integration [id=10] 
22:36:45.234 INFO - <- Clean snapshot 127 

BUILD SUCCESSFUL 

Total time: 14.253 secs 
22:36:45: External task execution finished 'sonarRunner'. 

После этого, в моем Sonar я могу видеть все метрики, но не охват кода. Знаете ли вы, что здесь происходит?

+0

«Информация о покрытии не была собрана. Возможно, вы забыли включить отладочную информацию в скомпилированные классы? »Попытайтесь скомпилировать с помощью отладочной информации – ZuzEL

ответ

0

С этого момента я думаю, что вам необходимо создать файлы покрытия независимо и импортировать эти файлы в гидролокатор.

Для кодов C# мы должны это сделать. Для проектов Java я не совсем уверен, но могу быть причиной.

Вы можете пройти по этой ссылке для получения дополнительной информации о C# пересадками покрытия: http://docs.codehaus.org/display/SONAR/C%23+Plugin

1

22:36:44.024 INFO - Analysing D:\projects\sonda-uml\sonda-uml-integration\build\jacoco\test.exec 22:36:44.043 WARN - Coverage information was not collected. Perhaps you forget to include debug information into compiled classes?

информации Тест не сформирован и сохранен в файл, указанный ${buildDir}/jacoco/test.exec, вы были указаны свойство

property 'sonar.jacoco.reportPath', "${buildDir}/jacoco/test.exec"

, но вам необходимо установить sonar.core.codeCoveragePlugin=jacoco, если это необходимо для указания этого свойства

Если вы предназначены для этого вам нужно настроить Gradle использовать jacoco плагин, посмотрите на Jacoco Plugin и настроить его должным образом, соответствующая часть для вашей проблемы destinationFile = file("${buildDir}/jacoco/test.exec"), а затем запустить процесс сборки/тест с градиент и тестовая информация будут созданы, поэтому вы можете запустить анализ сонара, и он найдет эту тестовую информацию.

Смежные вопросы