我一直在努力在云中设置 Selenium Grid2,现在我遇到了一个我无法弄清楚的错误。
Selenium::WebDriver::Error::UnknownError: Unable to connect to host 127.0.0.1 on port 7057 after 45000 ms. Firefox console output:
Error: no display specified
Error: no display specified
我已经启动了两个节点 - Hub 和 WebDriver
java -jar selenium-server-standalone-2.32.0.jar -role hub -port 7055
java -jar selenium-server-standalone-2.32.0.jar -role webdriver -hub http://ec2-54-244-219-84.us-west-2.compute.amazonaws.com:7055/grid/register
我已经安装了 Xvfb 并开始使用屏幕。
Xvfb :99 -screen 0 1024x768x24 &
我还设置了显示环境变量。
export DISPLAY=:99
我正在尝试在 Amazon EC2 上运行一个简单的测试。
require 'headless'
require 'selenium-webdriver'
# Start the headless browser
headless = Headless.new
headless.start
browser = Selenium::WebDriver.for(:remote, :url => "http://localhost:7055/wd/hub")
# Print google.com's title
browser.get('http://google.com')
puts browser.title
# Close the browser
browser.quit
headless.destroy
或者从我的本地机器
require 'headless'
require 'selenium-webdriver'
# Start the headless browser
headless = Headless.new
headless.start
browser = Selenium::WebDriver.for(:remote, :url => "http://ec2-54-244-205-27.us-west-2.compute.amazonaws.com:7055/wd/hub")
# Print google.com's title
browser.get('http://google.com')
puts browser.title
# Close the browser
browser.quit
headless.destroy
但我仍然收到上述错误...
Error: no display specified
此外,当我尝试从命令行运行 FireFox 时...
Xlib: extension "RANDR" missing on display ":99".