Testng报告断言并继续测试

时间:2016-06-01 14:18:42

标签: selenium testng reporting fluentlenium assertj

我正在尝试用流利的方式测试,并将其报告给范围报告。

问题是我在整个测试过程中都有断言,并希望在不使用try和catch的情况下报告它们。

任何想法怎么做?是否存在断言监听器?

2 个答案:

答案 0 :(得分:0)

您可以在自己的

上使用SoftAssert工具IAssert

答案 1 :(得分:0)

我做了这样的事情(我在每个断言失败时截取屏幕截图)是这样包装SoftAssert类:

import org.testng.asserts.IAssert;

public class SoftAssert extends org.testng.asserts.SoftAssert {

    @Override
    public void onAssertFailure(IAssert<?> assertCommand, AssertionError ex) {

        LOGGER.log(Level.FATAL, assertCommand.getMessage());
        //doReportingStuffHere
        super.onAssertFailure(assertCommand, ex);
    }
}

现在,每当你的软断言失败时(当它发生时,不只是在最后),你可以做你的报告。