【问题标题】:Getting Cobertura reports for pax-exam Integration Tests获取用于 pax-exam 集成测试的 Cobertura 报告
【发布时间】:2011-10-11 07:10:24
【问题描述】:

我正在使用 maven 和故障保护插件运行我的集成测试。测试本身是使用 pax-exam(使用 pax-runner)执行的。 Failsafe 在集成测试阶段运行,Cobertura 在验证阶段运行。

虽然我获得了所有 junit 测试的报告,但我从集成测试中一无所获。

这在技术上是否可行,还是 pax-runner 需要直接支持 cobertura?

知道如何解决这个问题吗?我也对任何其他有帮助的插件持开放态度,但我确实需要在 OSGi 包上运行集成测试..

谢谢!

【问题讨论】:

  • 我想知道为什么您的 PAX 考试集成测试需要代码覆盖率。恕我直言,这些应该保留用于验证,例如,OSGi 元数据是否正确,而不是关于特定功能,因此该逻辑的覆盖率报告不会有多大用处。
  • 嗯.. 感谢您的评论。我目前对我的代码的许多功能的覆盖率相当低。我可以编写大量的单元测试,但我不确定它是否真的能证明什么。我要测试的真正功能需要多个捆绑包,所以我必须一起测试它们。还是我们对集成测试的用途和内容有不同的概念?谢谢!
  • 当我需要验证我的包是否可以在真正的 OSGi 运行时环境中工作时,我会考虑使用 PAX Exam。任何依赖于 OSGi 的东西——Package-Imports 和 Package-Export、服务或捆绑事件、与服务注册中心的交互等等——都是公平的测试。但是,我认为大多数实际功能都可以在 OSGi 容器之外进行测试,这就是代码覆盖的意义所在。如果不是这种情况,一些对可测试性有敏锐眼光的重构可能会有所帮助。我还发现了 DS 和 Blueprint 的帮助,因为对 OSGi 类的(代码)依赖较少。

标签: osgi integration-testing cobertura


【解决方案1】:

嗯,已经有一段时间了。我发现最有帮助的事情是在 pax-exam 测试运行后检测构建并收集 cobertura.ser 文件。这远非简单的设置。我去的时候会报告的! relevant reference

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-29
    • 2016-06-19
    • 2013-11-19
    • 2013-02-10
    • 2012-02-12
    • 2014-03-17
    • 1970-01-01
    相关资源
    最近更新 更多