0

問題

Chromeドライバーを使用して実行すると、Seleniumの機能テストが失敗しますが、Firefoxを使用すると機能します。

私の環境

  1. Mac OS X Mountain Lion
  2. Chromeバージョン22.0.1229.94
  3. ビルド情報:バージョン: '2.2.1'、リビジョン: '16551'、時間: '2012-04-11 21:42:35'
  4. システム情報:os.name:'Mac OS X'、os.arch:'x86_64'、os.version: '10 .8.2'、java.version: '1.6.0_35'ドライバー情報:driver.version:ChromeDriver

再現する手順

例外は、githubのGebGrailsサンプルアプリケーションを使用する場合に発生します。

Chromeドライバーを使用してアプリケーションを実行します。

grails -Dgeb.env=chrome test-app

テストが実行を開始し、Chromeのインスタンスが正常に開かれますが、その後は何も起こりません。ChromeブラウザはURLに向けられておらず、ただ馬鹿げた笑みを浮かべてそこに座っています。以下のエラーは、15秒(またはそれくらい)のタイムアウト後にコンソールにスローされます。

エラー

Caused by: org.openqa.selenium.WebDriverException: Unable to either launch or connect to Chrome. 
Please check that ChromeDriver is up-to-date. Using Chrome binary 
at: /Applications/Google Chrome.app/Contents/MacOS/Google Chrome 

私のデバッグ手順

  1. このstackoverflowの投稿によると、私はさまざまなバージョンのドライバーを試しましたが、効果はありませんでした。
  2. Firefoxドライバーを使用すると、テストは成功します(残念ながら、Chromeでテストする必要があります)。
  3. Chromeの最新のベータ版を使用してみてVersion 23.0.1271.40 betaください。運がない。
  4. テストアプリのgebとseleniumのバージョンを最新かつ最高のものにアップグレードしました。def gebVersion = "0.7.2" def seleniumVersion = "2.25.0"

謙虚な感謝のセクション

これを見てくれてありがとう。gebを採用したいのですが、これまでのところ困難な戦いでした。

4

2 に答える 2

2

ばかげた答えかもしれませんが、chrome ドライバーをインストールしましたか? http://code.google.com/p/selenium/wiki/ChromeDriver

Firefox ではドライバーをインストールする必要はありませんが、Chrome と IE ではドライバーをインストールする必要があります。それが、クロムではなく FF を使用してテストを実行している理由かもしれません。

幸運を!

于 2012-10-24T22:31:55.410 に答える
0

Gebに関連しているかどうかはわかりませんが、WebDriverChromeDriverを使用してテストを実行すると同様の動作が得られると思います。

Chromeがパスにないときに、この種のエラーが発生しました。chrome.binaryは、常に実際の実行可能ファイルへの絶対パスである必要があります。Macの場合、これは通常次のようになります:/ Applications / Google Chrome.app/Contents/MacOS/Google Chrome

使用しているSelenium/WebDriverのバージョンは何ですか?

于 2012-10-24T21:56:55.360 に答える