我们有一个单元测试父Base类,以及一组扩展基类的单元测试.我希望每个失败的测试都能调用特定的方法.有可能在某处创建"钩子"或某种东西,即传递测试不会调用此方法,但是在执行结束时测试失败.
你应该看一下TestWatcher类.创建自己的类,扩展TestWatcher,覆盖失败的(Throwable e,描述描述)方法,并为测试添加规则.
public class MyWatcher extends TestWatcher {
@Override
protected void failed(Throwable e, Description description) {
callMyMethod();
}
}
Run Code Online (Sandbox Code Playgroud)
你的考试:
public class MyTest {
@Rule
public MyWatcher rule = new MyWatcher ();
@Test
public myTest(){...}
}
Run Code Online (Sandbox Code Playgroud)
TestWatcher中也有一些有用的方法,比如starting()和finished()
| 归档时间: |
|
| 查看次数: |
582 次 |
| 最近记录: |