在Windows 10上运行的Ruby Selenium Web驱动程序 – 无法find元素

这是我目前的设置:使用“Windows安装程序”安装的Windows 10 Ruby。 Ruby版本2.4

我有rubyseleniumselenium鼓驱动程序版本2.52.0(我有旧的版本,因为它有问题与火狐工作正常。

我在做什么我导航到“webpagetest.org”我只是填写一个url,然后点击“开始testing”button。 我可以点击button,但是我的脚本只是崩溃。 该脚本的作品,这意味着button被点击的用户界面,然后切换到下一个URL,但Selenium给我的错误信息,我无法交互,因为脚本错误了。

注:我可以运行我的代码没有任何问题从我的2012年运行优胜美地的Mac。 这个问题只发生在我的Windows 10上运行。我需要运行我的Windows机器上的rubyseleniumwebdriver。

下面是我正在做的一个截图,以及这个button的名字是正确的:

按钮类名称是正确的

这是我得到的错误消息

FirefoxDriver.prototype.findElementInternal_': Unable to locate element: {"method":"class name","selector":"start_test"} (Selenium::WebDriver::Error::NoSuchElementError) 

以下是我的Windows计算机上来自我的命令提示符的整个错误消息的屏幕截图:

命令提示符的错误消息

我已经尝试了以下内容:添加一个等待,看看页面是否只是点击太早。 改变了我的目标button的方式尝试“提交”与单击button

这是我目前的代码:

 require 'selenium-webdriver' require 'nokogiri' require 'open-uri' require 'yaml' require 'gmail' test_site = 'https://www.webpagetest.org' test_url = 'https://google.com' # open a firefox browser and navigate to page testing site driver = Selenium::WebDriver.for :firefox driver.navigate.to test_site # enter a URL and press the start test button driver.find_element(:id, 'url').send_keys test_url driver.find_element(:class, 'start_test').click # store the URL of results page results_url = driver.current_url puts results_url puts "made it here!" # wait for the results page to load and the load time to show begin element = driver.find_element(:id, 'LoadTime') rescue retry if element.nil? end 

我将不胜感激任何帮助! 我认为这个问题是Windows相关的(我对Windows相当新)。 感谢您花时间阅读我的问题!