我在設置Selenium WebDriverJS時遇到了一些麻煩。我的目標是使用Javascript(節點)在Chrome瀏覽器上運行硒測試。Selenium WebDriverJS,無法爲Chrome構建webdriver
我下面就https://code.google.com/p/selenium/wiki/WebDriverJs的說明以及https://code.google.com/p/chromedriver/wiki/GettingStarted
首先我下載了chromedriver,並運行它在終端上:
$ ./chromedriver
Starting ChromeDriver (v2.2) on port 9515
然後,我安裝了硒的webdriver:
$ npm install selenium-webdriver
npm http GET https://registry.npmjs.org/selenium-webdriver
npm http 304 https://registry.npmjs.org/selenium-webdriver
[email protected] node_modules/selenium-webdriver
然後,我啓動了節點控制檯並試圖構建webdriver實例
$ 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/
現在我被封鎖了。有人可以幫我解決這個問題嗎?我在這裏錯過了什麼?
謝謝
謝謝你的回答,我會試試這個! – haejeong87
非常感謝,它非常完美。現在,如果我可能會問,有沒有辦法在代碼中指定chromedriver的位置,而不是使用系統PATH? – haejeong87
我不得不挖掘源代碼,但它是值得的! 'new chrome.ServiceBuilder(PATH_TO_BINARY).build()'是關鍵:) – haejeong87