我正在研究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中使用异常处理吗?有人能回答这个问题吗?
谢谢。
发布于 2018-10-17 13:04:28
在测试开发中,吞咽异常是一种错误的做法。你得回到测试中去。如果一个测试抛出期望,那么在通常的正例中,它就是一个失败的情况。所以它必须被标记为失败。如果尝试catch,测试将不会将其标记为失败。
当Selenium方法抛出RunTimeException时,在这里不需要显式抛出。
如果您有兴趣记录故障情况下的excpetion,请根据测试结果使用testng listner进行记录。
有关示例,请参阅这个博客。
如果你愿意登录,当有期望的时候
https://stackoverflow.com/questions/52863137
复制相似问题