1

このSO 投稿に従って 、Gruntfile. Selenium スタンドアロンを手動でダウンロードし、ファイル内でその場所を指定した場合、テストは正常に実行されます。このプロセスを自動化したいので、次の構成を試しました。

protractor_webdriver: {
  start: {
    options: {
      path: 'node_modules/grunt-protractor-runner/node_modules/protractor/bin/',
      command: 'webdriver-manager start'
    }
  }
};

grunt.loadNpmTasks('grunt-protractor-webdriver');
grunt.registerTask('test', ['protractor_webdriver:start','protractor:run'])

手動でダウンロードしないようにする方法はありますか? 上記を試しましたが、実行すると警告が表示されました:

Running "protractor_webdriver:start" (protractor_webdriver) task
Verifying property protractor_webdriver.start exists in config...OK
File: [no files]
Options: path="node_modules/grunt-protractor-runner/node_modules/protractor/bin/", command="webdriver-manager start", keepAlive=false
Starting Selenium server
>> Selenium Standalone is not present. Install with webdriver-manager update --standalone

では、セレン スタンドアロン サーバーを手動でダウンロードする必要がありますか?
それとも、ここで設定を見逃したのでしょうか。

4

2 に答える 2

1

分度器は、WebDriverJS のラッパーです。

これは、Selenium Server および特定のブラウザ ドライバ (例: ) と対話するプログラムnodejsです。ChromeDriverIEDriver

そのため、(少なくとも IE の場合) Selenium サーバーを使用しないと、分度器で記述されたテストを実行できません。テスト スクリプトは Selenium Server にコマンドを送信し、Selenium Server はブラウザ ドライバと通信します。アーキテクチャの説明については、これを参照してください。

簡単に言えば、事前に Selenium サーバー インスタンスを起動しなければ、何も起こりません。

于 2015-01-13T21:09:57.333 に答える