我正在尝试让 Selenium Android WebDriver 与 Rspec 一起使用,以便通过 Android 模拟器测试我们的 Rails 移动应用程序。
我已按照设置说明进行操作,并使用以下代码运行测试:
driver = Selenium::WebDriver.for :android
driver.navigate.to "http://google.com"
element = driver.find_element(:name, 'q')
element.send_keys "Hello WebDriver!"
element.submit
puts driver.title
driver.quit
Android 模拟器上的 WebDriver 运行前两个命令,但是当它到达 时element = driver.find_element(:name, 'q')
,总是失败并显示EOFError: end of file reached
.
我发现无论第一个后面是什么都会发生错误navigate
,因此该方法似乎没有问题find_element
。
例如,如果我将上面的代码替换为:
driver = Selenium::WebDriver.for :android
driver.navigate.to "http://google.com"
driver.navigate.to "http://stackoverflow.com"
driver.quit
然后我仍然在第二个navigate
命令上得到同样的错误。
我尝试过各种超时,认为问题与连接性有关,但最终结果总是相同的。第一个导航命令似乎可以正常工作,因为模拟器会打开google.com
,但之后什么都不会发生。
为什么我会收到此错误?我怎样才能防止它,以便我的测试可以运行?