gpt4 book ai didi

java - 可以为失败的 JUnit 测试创建一个钩子(Hook)吗?

转载 作者:行者123 更新时间:2023-11-30 06:27:15 26 4
gpt4 key购买 nike

我们有一个单元测试父基类,以及一组扩展基类的单元测试。我希望每个失败的测试都调用一个特定的方法。可以在某处创建“ Hook ”或其他东西,即通过测试不会调用此方法,但失败测试会在执行结束时调用。

最佳答案

你应该看看 TestWatcher 类。创建您自己的扩展 TestWatcher 的类,覆盖 failed(Throwable e, Description description) 方法并向您的测试添加规则。

public class MyWatcher extends TestWatcher {
@Override
protected void failed(Throwable e, Description description) {
callMyMethod();
}
}

你的测试:

public class MyTest {
@Rule
public MyWatcher rule = new MyWatcher ();

@Test
public myTest(){...}
}

TestWatcher 中还有一些有用的方法,比如 starting() 和 finished()

关于java - 可以为失败的 JUnit 测试创建一个钩子(Hook)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13492101/

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