junit自定义测试规则


备注

两者都有好处。扩展ExternalResource很方便,特别是如果我们只需要一个before()来设置一些东西。

但是,我们应该知道,因为before()方法是在try...finally之外执行的,所以在after()执行清理所需的任何代码都不会在执行期间发生错误时执行。执行before()

这是它在ExternalResource

before();
try {
    base.evaluate();
} finally {
    after();
}

显然,如果在测试本身或其他嵌套规则中抛出任何异常,则仍将执行after。

自定义测试规则 相关例子