2013-03-19 102 views
12

我刚刚分离了单元测试和集成测试。我想将UT和IT的覆盖率结果分开。声纳故障安全测试结果

我跟着this tutorial,它的工作原理(感谢@JohnDobie)。

sonar coverage test results

声纳显示单独的代码覆盖结果和单元测试成功(右上)。但是,我怎样才能在声呐中获得集成测试成功?

+0

应该询问/迁移到超级用户,不是吗? – TheBlastOne 2013-03-19 10:31:34

+0

@TheBlastOne我不知道,超级用户没有任何声纳标签。 – gontard 2013-03-19 10:34:37

+4

@TheBlast我不同意,声纳问题通常与编程有关。我怀疑超级用户的人可以回答与单元测试和maven配置有关的问题。 – Sylar 2013-10-10 08:44:07

回答

10

等待IT执行结果声纳中的实现(请参阅@Fabriceanswer)。我在this tutorial中发现了一个解决方法。我们的想法是:

... fool Sonar to show test success for both unit and integration tests together by instructing Failsafe to store its test reports to the same directory as Surefire instead of the default failsafe-reports.

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-failsafe-plugin</artifactId> 
    <configuration> 
     <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory> 
    </configuration> 
</plugin> 

结果是不完美的,因为所有的测试结果在单元测试窗口小部件显示。但我真的不想在ci服务器上检查IT测试结果。我想为我的项目提供一个全功能于一身的仪表板。

enter image description here

2

IT执行结果不会被推送或显示在Sonar中。

这是我们未来可能添加的内容,但我们首先关注的是覆盖范围,毕竟这是最重要的。 (执行结果通常通过CI服务器上的CI软件进行监控)

+10

因为声呐是一个“一体化”工具,所以必须检查ci服务器是一件可惜的事情。 – gontard 2013-03-22 10:17:40

+2

我100%同意@gontard。 – diegomtassis 2014-02-05 15:25:15

+1

那么,测试执行结果在SonarQube中真的没用,因为如果你运行SonarQube分析而你的项目有回归,你应该始终具有100%的成功率(因此0错误和0失败)=>持续集成。 – 2014-02-06 11:10:15