gpt4 book ai didi

junit - 在 Maven 中使用 JUnit RunListener

转载 作者:行者123 更新时间:2023-12-03 23:32:55 24 4
gpt4 key购买 nike

我想用我自己的 RunListener 在我的单元测试中。所以我创建了以下类:

public class MyRunListener extends RunListener {

public MyRunListener() {
System.out.println("Creation of Run Listener...");
}

@Override
public void testStarted(Description description) throws Exception {
System.out.println("A Test is going to start");
}

}

现在,在我的 pom.xml :
        <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<properties>
<property>
<name>listener</name>
<value>my.company.MyRunListener</value>
</property>
</properties>
</configuration>
</plugin>

现在,当我运行 mvn test在我的项目中,输出如下:
Creation of Run Listener...

-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running xxx.SomeNewTests
Test New #1
Test New #2
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.109 sec
Running xxx.SomeErrorTests
Test Old #1
Test Old #2
Tests run: 2, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 0.125 sec <<< FAILURE!

Results :

Failed tests:
testOldOne(xxx.SomeErrorTests)
testOldTwo(xxx.SomeErrorTests)

Tests run: 4, Failures: 2, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------

如您所见,我的 RunListener 已创建,但在测试执行期间从未调用过。

我错过了什么?

技术信息:Java 6、Maven 3.0.2、JUnit 4.8.1

最佳答案

确保您的安全版本足够新,这仅在 2.7 版本中引入。

除此之外,如果您在多模块构建的第一个模块中构建 RunListener,则它在构建完成之前将无法用于万无一失。很合乎逻辑,但很容易忘记。

关于junit - 在 Maven 中使用 JUnit RunListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4968475/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com