首页 > 解决方案 > 如何处理硒中的 NoSuchElementException?

问题描述

我想测试一种情况。

有一个包含一些必填字段和提交按钮的表单。 在此处输入图像描述

我想在这里验证填写电子邮件字段后“需要电子邮件”错误是否消失。

-我使用软断言来验证错误是否消失。我的测试用例正在执行并显示通过。但在控制台中显示 NoSuchElementException。我使用 try catch 块来处理此异常,但它没有进入 catch 块,因此无法捕获它。

softAssert.assertNull(cp.getForeNameError(),
            "Error messages do not dissapear on forename entry");
    softAssert.assertNull(cp.getEmailIdError(),
            "Error messages do not dissapear on emailid entry");

`控制台错误:创建elementBy.id时发生错误:org.openqa.selenium.NoSuchElementException:无法找到元素:#email-err

标签: javaselenium-webdriverexceptiontestngassertion

解决方案


可能您在访问元素之前错过了延迟/等待,以便您尝试在页面上存在之前找到该元素。
或者该元素位于 iframe 内。
或者您使用了错误的定位器。
您没有在此处显示您的代码,因此我们无法说明您的具体情况。


推荐阅读