我正在尝试在新的服务器上运行Ruby Watir脚本。
我已经在旧服务器上编写了一个可工作的脚本:
#!/bin/ruby
require 'rubygems'
require 'watir'
require 'date'
require 'headless'
require 'fileutils'
require 'uri'
require 'logger'
headless = Headless.new(autopick: true, reuse: false, destroy_at_exit: true).start
options = Selenium::WebDriver::Chrome::Options.new
options.add_preference(:download, prefs)
options.add_argument('--ignore-certificate-errors')
options.add_argument('--disable-popup-blocking')
options.add_argument('--disable-translate')
b = Watir::Browser.new(:chrome, options: options)
b.goto 'someurl.com'
b.div(:id => 'IFRAME1').iframe.body.div(:id => 'DIVID1').div(class: ['Test1', 'Test2']).link(:id => 'DIVID2').click #getting warning here
我收到的警告如下:
WARN Selenium [DEPRECATION] Selenium::WebDriver::Error::ElementNotVisibleError已经弃用。使用Selenium::WebDriver::Error::ElementNotInteractableError(确保驱动程序支持W3C WebDriver规范)代替。
当前服务器版本:
headless (2.3.1, 2.2.0) selenium-webdriver (3.4.4) watir (6.6.3)
新的服务器版本:
headless (2.3.1) selenium-webdriver (3.142.3, 3.142.0) watir (6.16.5)
我有一种感觉,问题出在版本不匹配,但我无法确定。
到目前为止,我还没有找到任何解决方法。
selenium-webdriver 3.142.7
(似乎是最新版本),但仍然收到那些弃用消息。但现在我想知道是否是由于我使用的其他库之一导致的。我正在使用webdrivers 4.2.0
和watir 6.16.5
。除非你所说的“最新版本的Selenium”是指转移到其中一个4.x alpha版本? - Jeff Nyman