war - Emma 检测 WAR 文件

标签 war emma

我必须在单元测试期间测试托管在 Tomcat 上的 Web 服务的代码覆盖率。我将进行手动测试意味着我将在我的 http 请求中传递不同的参数值,并且需要为发送到服务器的每个请求的每个测试用例提供覆盖报告。我怎样才能用 Emma 做到这一点,或者我可以使用任何其他工具吗?

或者

请告诉使用 Emma 检测 WAR 的步骤

最佳答案

  • 在您的项目中创建一个 ANT 目标,它会编译源代码并检测类文件并创建 war 文件。






















  • 将 emma-2.1.5320.jar jar 复制到 java/jre/lib/ext/目录(无论您的 tomcat 使用哪个 java)。
  • 在 tomcat/bin/目录中创建一个 setenv.sh 文件,其中包含以下几行:

    !/bin/sh

  • 导出 JAVA_OPTS="$JAVA_OPTS -XX:-UseSplitVerifier -Demma.coverage.out.merge=true"
  • 重启tomcat服务器,查看tomcat进程是否更新了上述属性(ps -aef | grep tomcat)
  • 然后把这个生成的war文件复制到tomcat/webapps/目录下。
  • 开始您的测试用例,现在您应该在 catalina.out 文件中看到以下行
    EMMA:收集运行时覆盖率数据
  • 关于war - Emma 检测 WAR 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21451423/

    相关文章:

    java - Emma 与 Java 版本的兼容性

    maven-2 - 如果从命令提示符处执行了mvn clean命令,则mvn package命令无法成功运行

    android - 如何找到在 chromium for android 上运行的测试用例的代码覆盖率?

    android - 通过更改 build.xml 和 ant.properties 生成 Android 代码覆盖率

    java - 部署 WAR 时出现 Glassfish 错误 - 部署期间发生错误 : Exception while preparing the app : Invalid resource :

    java - 无法运行 EMMA 代码覆盖率

    java - 测量驻留在单独项目中的 Selenium 测试的代码覆盖率

    java - 如何在 Raspberry Pi(Rip) 上部署一个 war 文件?

    java - 使用 Gradle 将错误的文件添加到 WAR 包中

    java - 如何在 Tomcat 中中断部署/拒绝应用程序?