SonarQube4.4+Jenkins进行代码检查实例之三-单元测试分析
作者:張克強??? 作者微博:張克強-敏捷307
在 《SonarQube4.4+Jenkins進行代碼檢查實例之一》 中介紹了不編譯只檢查的方式。
在《SonarQube4.4+Jenkins進行代碼檢查實例之二》中介紹了編譯并檢查編譯結果的方式。
本文來介紹如何利用SonarQube來分析單元測試。最新推薦在分析插件是Jacoco。
當然要進行單元測試,首先單元測試得到了書寫,能夠本地執行得到結果。本示例采用Maven的典型結構。
1,配置Maven,在maven的conf目錄下打開settings.xml,在<profile>下加入Sonar,如下
<!-- sonar --><profile><id>sonar</id><activation><activeByDefault>true</activeByDefault></activation><properties><!-- FOR Embedded database H2--><sonar.jdbc.url>jdbc:h2:tcp://localhost:9092/sonar</sonar.jdbc.url><sonar.jdbc.driverClassName>org.h2.Driver</sonar.jdbc.driverClassName> <sonar.jdbc.username>sonar</sonar.jdbc.username><sonar.jdbc.password>sonar</sonar.jdbc.password><!-- optional URL to server. Default value is http://localhost:9000 --> <sonar.host.url>http://127.0.0.1:9000</sonar.host.url> </properties> </profile><!-- end of sonar --> 2,在Jenkins中配置,前面部分與實例二一樣,到了Maven的部分,root POM填寫pom.xml
? ? ? ?在Goals and options中填寫?org.jacoco:jacoco-maven-plugin:prepare-agent clean install?
? ? ?SonarQube和Maven都內嵌支持了Jacoco,所以不必另外安裝Jacoco
3,在Jinkins中繼續配置Post Step,在Execute Windows batch command中 填入?mvn sonar:sonar
4,以上配置就大功告成了。
當代碼在SVN中提交后,仍然在1分鐘左右,就能啟動以上。
到SonarQube中查看,發現在單元測試部分有如下圖示:
單元測試的成功情況和覆蓋率都有了,不僅如此還有
| Insufficient branch coverage by unit tests |
通過以上,就能監控代碼在一個可觀察的樣子,并能漸漸提高,減少技術債務,得到干凈的代碼。規避缺陷和異常!
| Insufficient branch coverage by unit tests |
總結
以上是生活随笔為你收集整理的SonarQube4.4+Jenkins进行代码检查实例之三-单元测试分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SonarQube4.4+Jenkins
- 下一篇: 敏捷DoD完成定义的多种形态