web-dev-qa-db-ja.com

Seleniumサーバーエラー:新しいサービスchromedriverserviceを作成できません

Windows 10コンピューターでwebdriverioを実行しようとしていますが、テストjsファイルを実行しようとすると、同じ問題が発生し続けます。だから私はこれを実行します-jar /your/download/directory/Selenium-server-standalone-3.5.3.jarサーバーを起動すると、この出力が表示されます

13:06:19.471 INFO - Selenium build info: version: '3.5.3', revision: 'a88d25fe6b'
13:06:19.472 INFO - Launching a standalone Selenium Server
2018-02-16 13:06:19.503:INFO::main: Logging initialized @301ms to org.seleniumhq.jetty9.util.log.StdErrLog
13:06:19.564 INFO - Driver class not found: com.opera.core.systems.OperaDriver
13:06:19.600 INFO - Driver provider class org.openqa.Selenium.safari.SafariDriver registration is skipped:
 registration capabilities Capabilities [{browserName=safari, version=, platform=MAC}] does not match the current platform WIN10
13:06:19.640 INFO - Using the passthrough mode handler
2018-02-16 13:06:19.673:INFO:osjs.Server:main: jetty-9.4.5.v20170502
2018-02-16 13:06:19.697:WARN:osjs.SecurityHandler:main: [email protected]@3e9b1010{/,null,STARTING} has uncovered http methods for path: /
2018-02-16 13:06:19.703:INFO:osjsh.ContextHandler:main: Started o.s.j.s.ServletContextHandler@3e9b1010{/,null,AVAILABLE}
2018-02-16 13:06:19.807:INFO:osjs.AbstractConnector:main: Started ServerConnector@4e7dc304{HTTP/1.1,[http/1.1]}{0.0.0.0:4444}
2018-02-16 13:06:19.808:INFO:osjs.Server:main: Started @605ms
13:06:19.808 INFO - Selenium Server is up and running

その後、私は新しいコマンドラインプロンプトを開き、次のようなtest.jsファイルを実行しました。

var webdriverio = require('webdriverio');
var options = {
    desiredCapabilities: {
        browserName: 'chrome'
    }
};

webdriverio
    .remote(options)
    .init()
    .url('http://www.google.com')
    .getTitle().then(function(title) {
        console.log('Title was: ' + title);
    })
    .end()
    .catch(function(err) {
        console.log(err);
    });

そして、これは私が得るエラーです

{ Error: A new session could not be created.
    at end() - C:\Users\KenyaThompson\Desktop\test.js:16:6
  details: undefined,
  message: 'Unable to create new service: ChromeDriverService\nBuild info: version: \'3.5.3\', revision: \'a88d25fe6b\', time: \'2017-08-29T12:54:15.039Z\'\nSystem info: Host: \'LAPTOP-9GIHGJ9I\', ip: \'10.0.0.243\', os.name: \'Windows 10\', os.Arch: \'AMD64\', os.version: \'10.0\', Java.version: \'1.8.0_161\'\nDriver info: driver.version: unknown',
  type: 'RuntimeError',
  seleniumStack:
   { type: 'SessionNotCreatedException',
     message: 'A new session could not be created.',
     orgStatusMessage: 'Unable to create new service: ChromeDriverService\nBuild info: version: \'3.5.3\', revision: \'a88d25fe6b\', time: \'2017-08-29T12:54:15.039Z\'\nSystem info: Host: \'LAPTOP-9GIHGJ9I\', ip: \'10.0.0.243\', os.name: \'Windows 10\', os.Arch: \'AMD64\', os.version: \'10.0\', Java.version: \'1.8.0_161\'\nDriver info: driver.version: unknown' } }

誰かが私にここで何が間違っているのか説明してくれませんか?また、はい、npmとwdio-chromedriver-serviceを使用してchromedriverをインストールしました。

5
Planet_Man

次のように、webdriver-managerを介してChromeDriverのバージョンを更新します。

webdriver-manager clean
webdriver-manager update
webdriver-manager start

これにより、古いバージョンが削除され、ビルドされた構成に記載されている最新のもので更新され、サーバーが再起動します。お役に立てれば。

5
Kyle Kohler

あなたが見ているエラーは何が間違っているのかについてのヒントを次のように私たちに与えます:

   { type: 'SessionNotCreatedException',
     message: 'A new session could not be created.',
     orgStatusMessage: 'Unable to create new service: ChromeDriverService\nBuild info: version: \'3.5.3\', revision: \'a88d25fe6b\', time: \'2017-08-29T12:54:15.039Z\'\nSystem info: Host: \'LAPTOP-9GIHGJ9I\', ip: \'10.0.0.243\', os.name: \'Windows 10\', os.Arch: \'AMD64\', os.version: \'10.0\', Java.version: \'1.8.0_161\'\nDriver info: driver.version: unknown' }

ChromeDriverが検出されないことはエラーメッセージから明らかで、ログメッセージはDriver infoと表示されます:driver.version:unknown。このエラーの主な理由は、使用しているバイナリ間の非互換性である可能性があります。

  • あなたのSelenium Clientバージョンは3.5.3がリリースされました2017- 08-29T12:54:15.039Z
  • ChromeDriverのバージョンはunknownです。
  • あなたのChromeブラウザのバージョンはunknownです。

解決

簡単な解決策は次のとおりです。

  • Selenium Clientのバージョンを最新レベルに更新します(つまり、Selenium 3.9.1
  • ChromeDriverのバージョンを最新レベルに更新します(つまり、ChromeDriver 2.35
  • ChromeDriver v2.35Release Notesに従って、を更新しますChromeブラウザバージョンからv62-64
  • CCleaner ツールを実行して、テストスイートを実行する前後にOSの雑用を一掃します
  • Chrome Browserのベースバージョンが古い場合、アンインストールChrome Browserから Revo Uninstallerまで および最新のGAリリースされたバージョンのChromeブラウザをインストールします
  • Testを実行します。
4
DebanjanB

グリッドノードを起動するときに、-Dwebdriver.chrome.driverパラメータのchromedriver.exeへのパスが正しいことを確認してください:例:

Java -Dwebdriver.chrome.driver="C:\DEV\Eclipse\MainWorkspace\webdrivers\chromedriver.exe" -jar Selenium-server-standalone-3.141.59.jar -role node  -hub http://localhost:4444/grid/register -nodeConfig node-config.json > node_output.log 
3
JuliaA

Selenium Standalone Serverは現在ビルド3.9.1です。

スタンドアロンサーバーの古いバージョンを実行しているようです。おそらく、実行しているChromeDriverバージョンは、Selenium Standalone Serverを更新すると機能が向上する可能性がありますか?

http://www.seleniumhq.org/download/

また、念のため... Windowsの最新バージョンを使用しているChromeドライバーのバージョンですか?最新バージョンは2.35です https://chromedriver.storage .googleapis.com/index.html?path = 2.35 /

0
Denzik