Невозможно запустить Firefox в selenium 3.0-beta3 с geckodriver 0.10, используя Javascript с собственным образцом selenium

просто хочу изучить тестирование Selenium, начиная с собственного образца. Однако после того, как все настроено (Node.js, Selenium), когда я хочу использовать собственный образец selenium-webdriver, он не работает:

Это официальный код (название google_search.js), предоставленный селеном:

var webdriver = require('selenium-webdriver'),
    By = webdriver.By,
    until = webdriver.until;

var driver = new webdriver.Builder()
    .forBrowser('firefox')
    .build();

driver.get('http://www.google.com/ncr');
driver.findElement(By.name('q')).sendKeys('webdriver');
driver.findElement(By.name('btnG')).click();
driver.wait(until.titleIs('webdriver - Google Search'), 1000);
driver.quit();

Этот код находится в папке example, в командной строке Node.js я перехожу к node_modules\selenium-webdriver\example и помещаю geckodriver в эту папку, затем запускаю node google_search.js Вот результат:

C:\Users\username\node_modules\selenium-webdriver\lib\promise.js:2291
        throw error;
        ^

WebDriverError: Unable to parse new session response: {"error":"unknown error","
message":"Expected browser binary location, but unable to find binary in default
 location, no 'firefox_binary' capability provided, and no binary flag set on th
e command line"}
    at WebDriverError (C:\Users\username\node_modules\selenium-webdriver\lib\err
or.js:27:10)
    at C:\Users\username\node_modules\selenium-webdriver\lib\http.js:335:17
    at process._tickCallback (node.js:369:9)
From: Task: WebDriver.createSession()
    at Function.createSession (C:\Users\username\node_modules\selenium-webdriver
\lib\webdriver.js:366:24)
    at createGeckoDriver (C:\Users\username\node_modules\selenium-webdriver\fire
fox\index.js:497:27)
    at Driver (C:\Users\username\node_modules\selenium-webdriver\firefox\index.j
s:605:14)
    at Builder.build (C:\Users\username\node_modules\selenium-webdriver\index.js
:557:16)
    at Object.<anonymous> (C:\Users\username\node_modules\selenium-webdriver\exa
mple\google_search.js:44:6)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)
From: Task: WebDriver.navigate().to(http://www.google.com/ncr)
    at Driver.schedule (C:\Users\username\node_modules\selenium-webdriver\lib\we
bdriver.js:414:17)
    at Navigation.to (C:\Users\username\node_modules\selenium-webdriver\lib\webd
river.js:1042:25)
    at Driver.get (C:\Users\username\node_modules\selenium-webdriver\lib\webdriv
er.js:832:28)
    at Object.<anonymous> (C:\Users\username\node_modules\selenium-webdriver\exa
mple\google_search.js:46:8)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)

Я сделал что-то не так? Может ли кто-нибудь сказать мне, почему официальный образец не запускает Firefox? Спасибо!


person sillicon    schedule 28.09.2016    source источник
comment
stackoverflow.com/questions/9907492/ - проверьте это   -  person Rao    schedule 28.09.2016


Ответы (1)


У меня было такое же сообщение об ошибке при попытке запустить приложение С# с Selenium 3.0.0.

Проблема заключалась в том, что я использовал x64 Geckodriver.exe. После загрузки и копирования 32-битной версии в мою папку bin все заработало.

-Роберт

person Robert    schedule 17.10.2016