tomcat 上部署的 Web 应用程序的集成测试覆盖率?

Integration Test Coverage for a webapp deployed on tomcat?

我有一个编译为 WAR 文件的 Maven 项目。 然后我有一个包含集成测试的单独测试项目。集成测试项目通过 WAR 文件中的 tomcat 启动 Web 应用程序,然后 运行 测试。

我现在唯一的覆盖率报告是针对主项目中的单元测试。使用 JMockit-coverage and JUnit.

如何获取本次集成测试达到的该Web应用程序的代码覆盖率?

您可以使用优秀的 JaCoCo 库。 JaCoCo 基本上是一个 java 代理,您应该在集成测试期间将其与 JVM 一起启动。 Maven 插件:jacoco-maven-plugin 在这里可能会有用。

默认情况下,测量的覆盖率将重新记录在 jacoco.exec 文件中。

一些有用的链接:

但是当使用 maven-failsafe-plugin 并从 maven 开始嵌入 tomcat 时,您可能 运行 遇到问题 like this. Then probably the best way to go is usage of jacoco via ant and maven-antrun-plugin (working example). In spare time you may also take a look at this 博客 post.

不幸的是,使用 Maven 设置 JaCoCo 可能很耗时。

希望对您有所帮助