运行UI selenium功能测试后的应用程序代码覆盖率

时间:2016-09-17 15:40:06

标签: java selenium code-coverage jacoco emma

我试图在使用selenium进行基于GUI的功能测试测试后获得java源代码覆盖率。 在java中运行selenium功能测试后,执行或覆盖了所有源代码(实际应用程序)代码( NOT selenium test code )。

这可以使用Emma或jacoco或其他任何方式实现吗? 任何做过这个的人都可以给我一个想法来开始这个吗?

2 个答案:

答案 0 :(得分:0)

我们的Java Test Coverage tool可以做到这一点。

这个过程是直截了当的:

  1. 将测试覆盖率工具指导器应用于源代码并进行编译。
  2. 运行应用程序,以您想要的任何方式运行它(包括运行硒,或手动交互或单元测试)
  3. 导致应用程序退出main。
  4. 在main中插入的instrumenter代码将写入覆盖数据
  5. 使用工具GUI界面显示/探索测试覆盖率
  6. 你可能有一个长期运行的(服务器)应用程序,它不会自然退出;在这种情况下,由于您没有退出,您无法通过退出main来获取测试覆盖率。在这种情况下,您可以在应用程序中的某个位置添加对工具的DumpTestCoverage()方法的调用,您可以通过与应用程序的某些交互来执行该操作。然后,当您想要快照时,只需运用该功能。

答案 1 :(得分:0)

我总是在Gradle中使用Jacoco插件。它以一种生成报告并使一切变得简单的方式很酷。您可以在build.gradle文件中对其进行配置。