如果找不到元素,我可以继续我的脚本吗?

时间:2018-03-17 18:19:13

标签: java selenium testing automation webdriver

我必须根据测试数据多次运行我的逻辑。

在这里,在一些迭代中,几个字段是可选的,所以我得到No element found exception但是我可以通过TC,所以我想继续我的脚本。

在下一次迭代中,我的脚本应该再次查找该字段,如果它存在,它应该遵循路径1或路径2。

我如何实现这一目标?

请帮忙......

3 个答案:

答案 0 :(得分:1)

你必须使用try catch构造来捕获noSuchElement异常,并且在catch块中没有代码或代码,当元素不存在时,不需要执行代码或代码。

另一种选择是使用findElements而不是findElement,这将为您提供一个列表。您现在可以检查列表是否为空,这意味着找不到该元素,找到该元素时列表中有一个元素。使用findElements时不会抛出异常。

答案 1 :(得分:1)

使用try / catch块

try {
    data = getElement(1);
    found = true;
} catch (NoSuchElementException e) {
    found = false;
}

答案 2 :(得分:0)

您可以使用if(){} else {}条件来处理。 或者您可以在缺少的字段中放置一些默认值。或者您可以使用异常处理概念try {} catch(){} blocks ..