Maven,显示当前正在运行的单元测试
我的公司最近已经切换到maven,并且过渡非常顺利,但有一件事情让我很烦恼。 更早之前,在pre-maven时代,你可以看到哪些测试是当前类正在运行(如果你在一个类中有40个单元测试,并且第二个测试失败,你会看到它)。 现在看起来就是这样的:它显示测试类的名称,就是这样。你必须等到班上完成所有的测试才能看到结果(你可以停止测试,它会显示你停下来的进度,但在实际阻止之前你什么都看不到)。这在一些集成测试中非常烦人和耗时。Maven,显示当前正在运行的单元测试
如果有人知道这个解决方案,我将不胜感激。提前致谢。
您可以配置将在控制台上打印当前运行测试的侦听程序。请参阅章节的junit maven-surefire-plugin documentation的Using custom listeners and reporters
或testng maven-surefire-plugin documentation
<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>
如果您使用JUnit,你could use a @Rule
for this。
如果您只希望它适用于Maven何时运行测试,请使用System属性来启用/禁用输出。
这是一个关于使用Junit @ Rule's打印出当前测试名称的线程:http://*.com/q/473401/32453尽管如果您想要将其添加到某个测试公共基类,一个单元测试输出它[?] – rogerdpack 2016-06-15 18:03:02
@simleo。我希望看到该链接发生了变化,以反映它特别指向JUnit页面。还有另外一个页面,它提供了一个用于向[Maven Surefire TestNG设置]添加监听器的信息(http://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html) – 2017-05-19 00:29:50
@JohnChesshir我添加了链接。 – SpaceTrucker 2017-05-19 08:22:29