我是否可以在TestNG报告中标记测试失败并继续进行相同的测试.. 通过使用Assert.assertEquals(acutalResult,ExpectedResult)测试Case失败时,我不会执行Test。我尝试过try catch block但问题仍然存在。
答案 0 :(得分:0)
断言失败会抛出AssertionError。它是错误而不是例外。您可能试图在捕获中捕获异常,因此它不会起作用。你需要的是软断言。尝试搜索软断言,您也可以获得其他实现方法。
答案 1 :(得分:0)
单独为每个断言添加try / catch。如果出现任何故障,请定义变量并增加。如果测试用例大于0,最后会失败。
try{
//assertion cod
}catch(AssertionError ae){
Reporter.log(Print failure to report);
errorCounter++;
}
if(errorCounter > 0){
fail(message);
}
答案 2 :(得分:0)
测试失败后,TestNG将创建一个xml文件' testng-failed.xml ';它包含所有失败的测试方法。它可用于手动或自动重新运行失败的测试。
答案 3 :(得分:0)
您可能想要阅读" Soft Assertion vs Hard Assertion"。只是谷歌吧。有很多关于如何做到这一点的信息。
A"软断言"允许您在不破坏测试流程的情况下断言(部分)测试结果。你基本上记录你的结果(见下面的例子)它可能看起来像什么,并在测试结束后通过手动引发故障或断言" log" (检查故障是否有效:如果没有 - 通过,如果有故障 - 设置失败)
查看此资源:Exampl