11

我的公司最近切换到 maven,过渡非常顺利,但是有一个让我很恼火。所以早些时候,在前 maven 时代,你可以看到当前类正在运行哪个测试(如果你在一个类中有 40 个单元测试,并且第二个测试失败,你会看到它)。现在它看起来是这样的:它显示测试类的名称,仅此而已。您必须等到课堂上的所有测试都完成才能真正看到结果(您可以停止测试,它会显示您停止点的进度,但在实际停止它们之前您什么都看不到)。在某些集成测试中,这确实很烦人且耗时。

如果有人知道解决方案,我将不胜感激。提前致谢。

4

2 回答 2

8

您可以配置一个侦听器,它将在控制台上打印当前运行的测试。请参阅junit maven-surefire-plugin 文档testng maven-surefire-plugin 文档Using custom listeners and reporters的部分

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.19.1</version>
    <configuration>
      <properties>
        <property>
          <name>listener</name>
          <value>com.mycompany.MyResultListener,com.mycompany.MyResultListener2</value>
        </property>
      </properties>
    </configuration>
  </plugin>
于 2013-03-05T08:22:12.227 回答
1

如果您使用 JUnit,则可以为此使用 a@Rule

如果您只希望它在 Maven 运行测试时应用,请使用系统属性来启用/禁用输出。

于 2013-03-05T08:24:37.293 回答