【发布时间】:2020-02-12 14:50:09
【问题描述】:
大家好,我在运行我的 watir 测试自动化代码时收到警告,即使它有效,我也想解决它。
警告:2020-02-12 08:35:47 WARN Selenium [弃用] Selenium::WebDriver::Error::ObsoleteElementError 已弃用。采用 Selenium::WebDriver::Error::StaleElementReferenceError(确保 driver 支持 W3C WebDriver 规范)。
有问题的代码行:
iframe.select(:id => 'col0').wait_until(&:present?)
来自这个更大的 sn-p。
iframe = @b.iframe(:title => /Mass Delete/)
iframe.wait_until(&:present?)
if iframe.present?
iframe.link(:visible_text => /Mass Delete #{type}/).click
iframe.select(:id => 'col0').wait_until(&:present?)
iframe.option(:text => /Owner Alias/).select
iframe.option(:text => 'equals').select
iframe.text_field(:id => "fval0").set user
iframe.button(:title => "Search").click
else
raise "Unable to locate the Salesforce Iframe"
end
这是页面html:
我尝试使用不同的定位器与该元素进行交互,但无济于事。
【问题讨论】:
-
这可能是 Watir 的问题,而且 Selenium 版本比他们最初测试的版本更新。但是,弃用警告是警告;不是阻止测试的错误。还是这个警告也会阻止你的测试运行?
-
这就是我想知道的。我最近升级到了最新的稳定 watir 和最新的稳定硒。正确,这只是一个警告,并不会阻止测试运行。它只是让我烦恼:/
-
抱歉,我们一直在努力发布一个新的 Watir 版本来解决这个问题。我们目前正在努力。
-
哦 - 这是个好消息。是否有可用的错误报告可供我查看以了解何时修复?
-
修复已签入 (github.com/watir/watir/pull/867)。我们只需要弄清楚为什么某些测试开始失败(可能是驱动程序问题而不是 Watir 代码)。如果您喜欢冒险,可以直接运行使用源代码。
标签: ruby selenium-webdriver watir