当我们在Selenium中使用TestNG时,我们不应该使用异常处理吗?



我正在研究Selenium关键字驱动的框架。我正在对关键字调用的方法使用异常处理。以下是我正在使用的方法之一。

public void adminvehicletitle(WebElement vehicletitle, String title) {
LogUtilities.info("------------ Entering vehicle title on admin post vehicle page --------");
try {
vehicletitle.sendKeys(title);
LogUtilities.info("------------ Vehicle title Entered successfully on admin post vehicle page --------");
}
catch(Exception e) {
LogUtilities.error("------------ "+e+" --------");
}
}

现在,我将车辆标题显示为无,因此不可见。当我使用 TestNG 运行测试时,即使日志中显示错误,它现在也通过了。在报告中,它还显示所有测试用例都已通过。

所以我现在的问题是,我们不应该在 TestNG 中使用异常处理吗?有人可以回答这个问题吗?

谢谢。

在测试开发中,吞咽异常是一种错误的做法。你必须在测试中扔回去。如果测试抛出期望,那么在通常的正向情况下,这是一个失败的情况。所以它必须被标记为失败。如果您尝试捕获,测试不会将其标记为失败。

由于Selenium方法抛出RunTimeException,因此在您的情况下不需要显式抛出。

如果您有兴趣记录失败案例的排除,请使用testng listner根据测试结果进行记录。

有关示例,请参阅此博客。

如果您愿意登录,当有期望时

最新更新