我想继续执行我的场景,即使在cucumber报告中出现了一些失败,它应该显示为失败,但不应该停止执行。
我尝试使用软Assert类
SoftAssertion sa = new SoftAssertion();
if (response.getStatusCode() == 200) {
Sytem.out.println("pAASED")
} else {
sa.fail("this is the failure");
}
但是假设我有两个场景,第一个场景的响应不是200,它将阻塞并使场景失败
java.lang.AssertionError: this is the failure
at org.junit.Assert.fail(Assert.java:88)
它甚至不适用于第二种情况。有人能帮助我如何达到预期的结果吗(即,不管有人失败,它都应该继续执行)
1条答案
按热度按时间1cosmwyk1#
这里有两个不同的东西。
作为响应的错误代码
例外
根据oracle网站的例外定义:
异常是在程序执行过程中发生的事件,它会中断程序指令的正常流动。
这样,异常就完全不同于正常的执行流。因此,如果您想继续即使在异常的情况下,您需要使用异常处理的概念。具体如下:
在上述示例代码中:
替换
yourMethodCall()
使用实际的方法调用。捕获适当的最小异常(你的情况应该是这样的
AssertionError
)考虑记录异常以便更好地调试,如代码中所示。为此创建日志对象。