繁体   English   中英

如果在 Junit 上测试失败,则运行方法

[英]Run a method if test fails on Junit

我在我的 Selenium 框架中添加了一个方法,该方法在测试结束时截取屏幕截图,但是由于某些测试由于失败而无法一直运行到最后。 如果测试失败,我想实施一个规则来运行这个截图方法。

就像是:

@Rule
public Failure fail = new Failure();

if (fail)
{
    // Method
}

你可以使用TestWatcher这个有失败和成功结果的钩子。 你可以添加你的钩子逻辑

import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.TestWatcher;
import org.junit.runner.Description;

public class Test1 {

    @Rule
    public TestWatcher watchman = new TestWatcher() {
        @Override
        protected void failed(Throwable e, Description description) {
            System.out.println("failed");
        }
    };

    @Test
    public void test() {
        Assert.assertEquals(2, 4);
    }

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM