我被要求配置 Maven 的肯定报告生成器,以包含一个测试套件条目,该测试套件依次测试 A、B 和 C 类,但没有看到:A B C MySuite 我看到了 A B C A B C
所以真的有两个问题:1)我如何停止测试运行两次。2)我如何让报告显示每个班级或套房的一个条目。
您可能会问为什么这如此重要,答案是架构师希望看到一个包含整个“组件”的测试并在报告中显示一个条目,我不希望测试运行两次(甚至更多) 次。
谢谢并恭祝安康,
厘米
要回答您的第一个问题,请注意有一个 Surefire 构建和报告插件。因此,当嵌套在build
andreporting
元素中时,它自然会运行两次。report-only
您可以通过在报告元素中使用目标来避免这种情况:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4.3</version>
<configuration>
<includes>
<include>test/my/Suite.java</include>
</includes>
<excludes>
<exclude>test/my/NoTestClass.java</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.4.3</version>
<reportSets>
<reportSet>
<reports>
<report>report-only</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
...
</project>
关于您的第二个问题,它可能归结为您使用的测试框架以及您的测试用例是如何设计的。需要更多细节来回答这部分问题。
您是否在surefire配置中指定了您的测试套件,如下所示:
<includes>
<include>**/AppTestSuite.java</include>
</includes>
使用此配置的报告是什么样的?