Internet Explorer環境で実行したいキュウリテストスイートがあります。問題は、Linuxマシンを使用していることです。だから私はこれ、やや時代遅れのガイドに従うことを切望しました。
ローカルVMを使用してテストを実行しようとしています。そこで、スタンドアロンのセレンサーバーを起動しました。これにより、次のことがわかります。
RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wb/hub
これは、接続先としてここにローカルホストがあるのは少し奇妙に思えますが、同じ物理マシン上にある場合でも、問題は発生しないはずです。
次は、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 MIの助けを借りて、もう少し進んでください。
unexpected response, code=404, content-type="text/html"
編集4:
最新の更新:
私の接続設定を変更しましたenv.rb
これにより、virtualboxに接続でき、IEブラウザが起動します。しかし!アプリケーションに接続できません。