Selenium IDE:如何在未找到元素或出错时继续脚本

Rom*_*ruz 5 selenium selenium-ide

我需要你的帮助.我只想在Firefox上继续我的Selenium IDE脚本,即使找不到错误或元素.我正在使用HTML格式的脚本.

Yev*_*kov 11

在下一个命令中使用此元素之前,您必须显式检查元素是否存在(这可能会导致错误并中断脚本的执行).用户扩展"sideflow"启用代码内的条件跳转.

这是sideflow扩展的主页:https://github.com/darrenderidder/sideflow

使用sideflow扩展,您可以使用以下代码:

storeElementPresent id=btnRecSearch isPresent
gotoIf  ${isPresent} == false   End
click   id=btnRecSearch 
....
label   End
Run Code Online (Sandbox Code Playgroud)


Lan*_*and 5

此示例适用于适用于 Firefox 和 Chrome 的新 Selenium IDE 版本 3。基本前提:

1) 存储 xpath 计数——这会保存与变量匹配的元素的计数

store xpath count | xpath=//body[@id='error-page'] | error
Run Code Online (Sandbox Code Playgroud)

2) 如果——在这种情况下测试计数大于 0

if | ${error} > 0
Run Code Online (Sandbox Code Playgroud)

3)做一些神奇的事情

4)结束

end
Run Code Online (Sandbox Code Playgroud)

Selenium IDE 3 - 如果元素存在示例

这是我使用相同示例发布的文章:http : //lance.bio/2018/12/21/selenium-ide-if-element-exists/


Par*_*val 0

Selenium IDE 插件更多地用于记录(即向您显示操作背后的代码);它确实允许一些播放,但这非常有限,而且我不确定它是否可以让您处理错误。现在,如果您愿意使用实际编程,那么您可以轻松处理错误。例如,在 Python 中你可以使用这样的东西:

try:
    driver.find_element_by_id("userid").click()
except NoSuchElementException:
    # do something else (close page, give you a warning, etc)
Run Code Online (Sandbox Code Playgroud)