JUnit Platform附带的Console Launcher(来自JUnit 5)在最后产生了一个非常漂亮的摘要 View 。但是,Maven Surefire插件具有非常简单的输出。

是否可以使用Surefire创建类似于启动创建的输出?

最佳答案

我当前的解决方法是禁用surefire并使用exec-maven-plugin手动运行ConsoleLauncher:

<!-- disable surefire -->
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-surefire-plugin</artifactId>
  <version><!-- ... --></version>
  <executions>
    <execution>
      <id>default-test</id>
      <phase>none</phase>
    </execution>
  </executions>
</plugin>
<!-- enable ConsoleLauncher -->
<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>exec-maven-plugin</artifactId>
  <version><!-- ... --></version>
  <executions>
    <execution>
      <phase>test</phase>
      <goals><goal>java</goal></goals>
      <configuration>
        <mainClass>org.junit.platform.console.ConsoleLauncher</mainClass>
        <arguments>
          <argument>--scan-class-path</argument>
          <argument>${project.build.directory}/test-classes</argument>
        </arguments>
        <classpathScope>test</classpathScope>
      </configuration>
    </execution>
  </executions>
</plugin>
<!-- ... -->
<dependency>
  <groupId>org.junit.platform</groupId>
  <artifactId>junit-platform-console-standalone</artifactId>
  <version><!-- ... --></version>
  <scope>test</scope>
</dependency>

关于java - 像JUnit 5控制台启动器一样,使用Surefire生成树输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50722888/

10-10 19:47