Ruby-Watir Warning - Selenium::WebDriver::Error::ObsoleteElementError
Ruby-Watir Warning - Selenium::WebDriver::Error::ObsoleteElementError
大家好,我收到一条警告 运行 我的 watir 测试自动化代码,即使它有效,我也想解决它。
The Warning: 2020-02-12 08:35:47 WARN Selenium [DEPRECATION]
Selenium::WebDriver::Error::ObsoleteElementError is deprecated. Use
Selenium::WebDriver::Error::StaleElementReferenceError (ensure the
driver supports W3C WebDriver specification) instead.
违规代码行:
iframe.select(:id => 'col0').wait_until(&:present?)
来自这个更大的片段。
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:
Page Html
我试过使用不同的定位器与该元素交互,但无济于事。
这将在 Watir 的下一版本中解决 - 确切的发布日期待定。在短期内,您有几个选项可以隐藏警告。
记录到文件
我建议将 Selenium 日志发送到文件中。这使它保持分离,并且在您碰巧需要它时仍然可用。
Selenium::WebDriver.logger.output = 'selenium.log'
忽略警告
通常您不需要 Selenium 警告,因为它们应该通过 Watir 更改得到解决。因此,您可以更改 Selenium 记录器以忽略警告:
Selenium::WebDriver.logger.level = :error
大家好,我收到一条警告 运行 我的 watir 测试自动化代码,即使它有效,我也想解决它。
The Warning: 2020-02-12 08:35:47 WARN Selenium [DEPRECATION] Selenium::WebDriver::Error::ObsoleteElementError is deprecated. Use Selenium::WebDriver::Error::StaleElementReferenceError (ensure the driver supports W3C WebDriver specification) instead.
违规代码行:
iframe.select(:id => 'col0').wait_until(&:present?)
来自这个更大的片段。
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:
Page Html
我试过使用不同的定位器与该元素交互,但无济于事。
这将在 Watir 的下一版本中解决 - 确切的发布日期待定。在短期内,您有几个选项可以隐藏警告。
记录到文件
我建议将 Selenium 日志发送到文件中。这使它保持分离,并且在您碰巧需要它时仍然可用。
Selenium::WebDriver.logger.output = 'selenium.log'
忽略警告
通常您不需要 Selenium 警告,因为它们应该通过 Watir 更改得到解决。因此,您可以更改 Selenium 记录器以忽略警告:
Selenium::WebDriver.logger.level = :error