2011-10-11 138 views
0

我使用maven和故障安全插件运行集成测试。测试本身是使用pax-exam(使用pax-runner)执行的。故障安全运行在集成测试阶段,Cobertura进行验证。获得Cobertura报告以进行pax考试集成测试

尽管我的所有junit测试都得到了报告,但我从集成测试中得不到任何结果。

这在技术上甚至是可行的,还是会让跑步者需要直接支持cobertura?

任何想法如何我可以解决这个问题?我也开放给任何其他插件的帮助,但我确实需要运行OSGi捆绑集成测试..

谢谢!

+0

我想知道您为什么需要代码覆盖您的PAX考试集成测试。恕我直言,这些应该保留用于验证,例如,OSGi元数据是正确的,而不是特定的功能,所以该逻辑的覆盖率报告将不会被测量太多有用。 –

+0

嗯..感谢您的评论。我目前对代码的很多功能的覆盖率都很低。我可以写出大量的单元测试,但我不确定它会证明什么。我想测试的真实功能需要多个包,所以我必须一起测试它们。或者我们对于集成测试的目的和关于什么有不同的概念?谢谢! – Miquel

+0

我想在使用PAX考试时需要验证我的包是否可以在真正的OSGi运行时环境中使用。依赖于OSGi的任何东西 - 软件包导入和软件包导出,服务或捆绑事件,与服务注册中心的交互等 - 对测试都是公平的。不过,我认为大部分实际功能都可以在OSGi容器之外进行测试,而这正是代码覆盖有意义的地方。如果情况并非如此,那么对可测试性敏锐的重构可能会有所帮助。我还发现DS和Blueprint也有帮助,因为OSGi类的(代码)依赖关系较少。 –

回答

0

嗯,这是一段时间。我发现可以帮到的最接近的事情是在pax考试测试运行后检测构建和收集cobertura.ser文件。这远非简单的设置。我会一直报告! relevant reference