【问题标题】:Failing Maven test JUnit5 test programmatically以编程方式失败的 Maven 测试 JUnit5 测试
【发布时间】:2018-01-30 21:26:25
【问题描述】:

我确实使用 JUnit5 执行我的 Maven 测试,其中所有测试类都有

@ExtendWith({ProcessExtension.class})

注解。如果是这种情况,此扩展必须根据特殊逻辑使测试方法失败。但我不知道怎么做。

方法

@Override
public void afterEach(ExtensionContext context) {
    ...
}

获取此 context 参数,但无法使已执行的测试方法失败。如何通知 Maven 该方法失败?

KI

【问题讨论】:

    标签: java maven testing junit5


    【解决方案1】:

    我认为您可以为此使用fail 方法:

    import static org.junit.jupiter.api.Assertions.fail;
    
    
    public class ProcessExtension implements AfterEachCallback {
    
        @Override
        public void afterEach(ExtensionContext context) {
            boolean failTest = ...;
    
            if (failTest) {
                fail("test failed");
            }
        }
    }
    

    【讨论】:

    • 这是正确的:您可以通过抛出异常使afterEach() 方法中的测试失败。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-21
    • 2017-05-21
    • 2021-05-27
    • 2019-05-02
    • 2011-02-23
    • 1970-01-01
    相关资源
    最近更新 更多