我有一个黄瓜测试套件我想在Internet Explorer环境中运行问题是我在linux机器上。所以我很想跟着这个,有些过时,guide。
我正在使用本地虚拟机尝试运行测试,在那里我启动了独立的selenium服务器,告诉我:
RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wb/hub
现在看起来有点奇怪,我在这里有localhost作为连接,但不管它是在同一台物理机器上,所以应该没有问题或者?
我的env.rb
接下来我定义了以下内容:
Capybara.app_host = "http://hostname:4444"
Capybara.default_driver = :selenium
Capybara.register_driver :selenium do |app|
Capybara::Selenium::Driver.new(app,
:browser => :remote,
:url => "http://MYNETWORKIP:4444/wd/hub",
:desired_capabilities => :internet_explorer)
end
正如指南所说。但是当我运行测试时,我收到以下错误:
bad URI(is not URI?): 127.0.0.1:4444/wd/hub (URI::InvalidURIError)
我怀疑它与我在代理服务器后面有关,因为我需要为Firefox(iceweasel)运行一些特殊设置。 这些设置是:
Capybara.register_driver :selenium do |app|
profile = Selenium::WebDriver::Firefox::Profile.new
profile["network.proxy.type"] = 2
profile["network.proxy.autoconfig_url"] = "http config adress here"
profile["network.proxy.no_proxies_on"] = "localhost, 127.0.0.1, #{%x[hostname].gsub("\n", "")}"
profile["network.proxy.http"] = "proxy http address here"
profile["network.proxy.http_port"] = 3128
profile["network.proxy.ssl"] = "ssl proxy http address here"
profile["network.proxy.ssl_port"] = 3128
profile["network.proxy.share_proxy_settings"] = true
Capybara::Selenium::Driver.new(app, :profile => profile)
end
现在花了很多时间试图让它工作,所以我需要一些帮助 Thx提前
编辑:
意识到某些版本可能会有所帮助。 来自gemfile:
cucumber (1.1.9)
rails (2.3.11)
selenium-webdriver (2.20.0)
编辑2:
将url更改为我的网络IP地址的进一步尝试给了我另一个错误:
both URI are relative (URI::BadURIError)
编辑3:
现在在Jon M的帮助下,我得到了更多但是遇到了:
unexpected response, code=404, content-type="text/html"
编辑4:
最新更新:
更改了env.rb
这让我连接到我的虚拟机并启动我的IE浏览器! 但!它无法连接到应用程序。
答案 0 :(得分:2)
我希望'bad URI'消息是由于缺少协议 - 尝试使用'http://'前缀'127.0.0.1:4444/wd/hub'
编辑(响应您的更新):
刚发现地址... 127.0.0.1是指localhost
,但如果Selenium服务器在另一台机器上运行,你肯定应该使用该机器的IP地址吗?