TestNG:我可以在TestNG报告中标记测试失败的任何方式并继续进行相同的测试。

时间:2014-01-22 13:54:54

标签: unit-testing selenium selenium-webdriver testng

我是否可以在TestNG报告中标记测试失败并继续进行相同的测试.. 通过使用Assert.assertEquals(acutalResult,ExpectedResult)测试Case失败时,我不会执行Test。我尝试过try catch block但问题仍然存在。

4 个答案:

答案 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