2

我被要求配置 Maven 的肯定报告生成器,以包含一个测试套件条目,该测试套件依次测试 A、B 和 C 类,但没有看到:A B C MySuite 我看到了 A B C A B C

所以真的有两个问题:1)我如何停止测试运​​行两次。2)我如何让报告显示每个班级或套房的一个条目。

您可能会问为什么这如此重要,答案是架构师希望看到一个包含整个“组件”的测试并在报告中显示一个条目,我不希望测试运行两次(甚至更多) 次。

谢谢并恭祝安康,

厘米

4

2 回答 2

2

要回答您的第一个问题,请注意有一个 Surefire 构建和报告插件。因此,当嵌套在buildandreporting元素中时,它自然会运行两次。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>

关于您的第二个问题,它可能归结为您使用的测试框架以及您的测试用例是如何设计的。需要更多细节来回答这部分问题。

于 2009-12-08T15:34:31.010 回答
0

您是否在surefire配置中指定了您的测试套件,如下所示:

<includes>
  <include>**/AppTestSuite.java</include>
</includes>

使用此配置的报告是什么样的?

于 2009-11-25T13:12:38.847 回答