【发布时间】:2019-10-25 05:30:50
【问题描述】:
我正在尝试集成 Jacoco 以获得使用 Maven 进行 Cucumber 测试的代码覆盖率。以下是我的项目结构:
-src-main-java-Pages
-src-main-java-Helper
-src-test-java-resources-features
-src-test-java-Steps
以下是我的 POM.xml 中的 Jacoco 配置
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.2</version>
<configuration>
<destFile>${basedir}/target/coverage-reports/jacoco.exec</destFile>
<dataFile>${basedir}/target/coverage-reports/jacoco.exec</dataFile>
<outputDirectory>${basedir}/target/coverage-reports/jacoco</outputDirectory>
</configuration>
<executions>
<execution>
<id>prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<goals>
<goal>report</goal>
</goals>
</execution>
<execution>
<id>check</id>
<goals>
<goal>check</goal>
</goals>
<configuration>
<rules>
<rule>
<element>PACKAGE</element>
<includes>
<include>**/*Steps.*</include>
</includes>
</rule>
<rule>
<element>PACKAGE</element>
<excludes>
<exclude>**/*Pages.*</exclude>
<exclude>**/*Page.*</exclude>
</excludes>
</rule>
</rules>
</configuration>
</execution>
</executions>
</plugin>
我能够生成代码覆盖率报告。但是,在报告中,它涵盖了 -src-main 包中的所有类。根据不同的谷歌研究和 SO 帖子,我尝试修改我的 POM 以排除页面并在我的代码覆盖率报告中仅包含步骤。但不知何故,它继续显示主包中的所有文件。
我是否采取了错误的方法?我只想创建一个报告,该报告仅针对我执行的测试而不是主包中的所有文件进行代码覆盖。
【问题讨论】:
标签: java maven selenium cucumber jacoco