我正在使用:mvn test
或mvn test -Dtest=<Class-Name>
或mvn test -Dgroups=<groups...>
通过maven运行TestNG测试。
我想要存储在文件中的测试中有很多输出,但我需要的控制台输出如下:
TestA.test1 - 通过了
TestA.test2 - 失败
TestB.test11 - 通过
我实现了一个实现ITestListener并放入System.out.println(message)的监听器; 为每种方法提供合适的消息。 在pom.xml中我添加了一个插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.9</version>
<configuration>
<properties>
<property>
<name>listener</name>
<value><my listener full name class></value>
</property>
</properties>
</configuration>
</plugin>
但似乎没有任何回应,同样的输出不断进入控制台。
知道我在这里做错了什么吗?我希望通过mvn test
继续运行我的测试,但是将输出更改为更有条理。
答案 0 :(得分:0)
如果您希望该侦听器适用于每个测试,那么您在测试类中导入错误。你的pom.xml应该是这样的:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.21.0</version>
<configuration>
<properties>
<property>
<name>usedefaultlisteners</name>
<value>false</value>
</property>
<property>
<name>listener</name>
<value>org.uncommons.reportng.HTMLReporter, org.uncommons.reportng.JUnitXMLReporter
</value>
</property>
</properties>
</configuration>
</plugin>
您应该禁用默认侦听器以使用自定义侦听器。