[英]Running Selenium Tests on Grid2
我有一个在Amazon EC2上运行的Selenium Grid
我有一个基本测试,我正在尝试使用Ruby和TestUnit运行。
require "test/unit"
require "rubygems"
gem "selenium-client"
require "selenium/client"
class Test3 < Test::Unit::TestCase
def setup
@verification_errors = []
puts "Running tests..."
@selenium = Selenium::Client::Driver.new \
:host => "http://ec2-54-244-205-27.us-west-2.compute.amazonaws.com:7055/wd/hub",
:browser => "*chrome",
:url => "https://news.google.com/",
:timeout_in_second => 60
@selenium.start_new_browser_session
end
def teardown
@selenium.close_current_browser_session
assert_equal [], @verification_errors
end
def test_test3
@selenium.open "/nwshp?hl=en&tab=wn&authuser=0"
@selenium.click "css=#gb_5 > span.gbts"
@selenium.wait_for_page_to_load "30000"
@selenium.click "css=div.main-appbar"
@selenium.click "css=span.titletext"
end
end
但是,我不断收到以下错误:
SocketError:getaddrinfo:提供的节点名或服务名,或者未知
我用下面的代码创建了Selenium Hub。
java -jar selenium-server-standalone-2.6.0.jar -role hub -port 7055
然后,我通过执行以下操作注册了WebDriver节点:
java -jar selenium-server-standalone-2.6.0.jar -role webdriver -hub http://ec2-54-244-205-27.us-west-2.compute.amazonaws.com:7055/grid/register 7056端口
我的网格控制台说...
WebDriverRemoteProxy
listening on http://10.250.11.113:7056/wd/hub
test session time out after 300 sec.
Supports up to 5 concurrent tests from:
我不知道让我的测试与Selenium Grid连接。 我做错了什么? 我的WebDriver的URL是否应该是WebDriverRemoteProxy下的“正在监听”?
我觉得您已经创建了充当webdriver
的集线器的节点。
为了向后兼容,“ wd”和“ rc”角色是“节点”角色的有效子集。 但是这些角色将远程连接的类型限制为其相应的API,而“节点”允许RC和WebDriver远程连接。
考虑到正在运行的RC,请尝试定义节点到rc
或更好的静止node
的角色
java -jar selenium-server-standalone-2.31.0.jar -role node -port 7056 -hub http://ec2-54-244-205-27.us-west-2.compute.amazonaws.com:7055
和你的硒远程实例一样
@selenium = Selenium::Client::Driver.new \
:host => "http://ec2-54-244-205-27.us-west-2.compute.amazonaws.com:7055/wd/hub",
:browser => "*googlechrome",
:url => "https://news.google.com/",
:timeout_in_second => 60
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.