Selenium WebDriverJS,不能为Chrome构buildwebdriver

我在设置Selenium WebDriverJS时遇到了一些麻烦。 我的目标是使用Javascript(节点)在Chrome浏览器上运行seleniumtesting。

我遵循https://code.google.com/p/selenium/wiki/WebDriverJs以及https://code.google.com/p/chromedriver/wiki/GettingStarted上的说明

首先,我下载了一个chromedriver,并在terminal上运行它:

$ ./chromedriver Starting ChromeDriver (v2.2) on port 9515 

然后,我安装了selenium-webdriver:

 $ npm install selenium-webdriver npm http GET https://registry.npmjs.org/selenium-webdriver npm http 304 https://registry.npmjs.org/selenium-webdriver selenium-webdriver@2.35.0 node_modules/selenium-webdriver 

然后,我开始了节点控制台,并试图构buildwebdriver实例

 $ node > var webdriver = require('selenium-webdriver') undefined > var driver = new webdriver.Builder().usingServer('http://localhost:9515/wd/hub').withCapabilities(webdriver.Capabilities.chrome()).build(); undefined > timers.js:103 if (!process.listeners('uncaughtException').length) throw e; ^ UnknownCommandError: unknown command: wd/hub/session at new bot.Error (/selenium/node_modules/selenium-webdriver/lib/atoms/error.js:109:18) at Object.bot.response.checkResponse (/selenium/node_modules/selenium-webdriver/lib/atoms/response.js:103:11) at /selenium/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:133:20 at /selenium/node_modules/selenium-webdriver/lib/goog/base.js:1178:15 at webdriver.promise.ControlFlow.runInNewFrame_ (/selenium-webdriver/lib/webdriver/promise.js:1438:20) at notify (/selenium/node_modules/selenium-webdriver/lib/webdriver/promise.js:328:12) at notifyAll (/selenium/node_modules/selenium-webdriver/lib/webdriver/promise.js:297:7) at fulfill (/selenium/ 

现在我被封锁了 有人可以帮我吗? 我在这里错过了什么?

谢谢

几件事在这里。

  1. 默认情况下,chromedriver服务器处理/,not / wd / hub处的命令。 所以你应该能够做到:

     new webdriver.Builder().usingServer('http://localhost:9515').build(); 
  2. 如果您希望chromedriver与独立Selenium服务器具有相同的签名,请使用--url-base=/wd/hub启动它。

  3. 不需要自己启动chromedriver – selenium-webdriver会为你做,如果你要求Chrome并且省略一个服务器位置(确保你的系统PATH可以findchromedriver):

     new webdriver.Builder() .withCapabilities(webdriver.Capabilities.chrome()) .build();