Tl; др:Кто-нибудь знает, как пройти путь chromedriver к селеном WebDriver в коде без установки переменной PATH среды?Passing требуют ('chromedriver) .path непосредственно к селеном WebDriver
Я пытаюсь использовать селен-webdriver с хромом, но предпочитаю не физически устанавливать хромированный рекордер и манипулировать дорожкой. У меня есть следующий код:
var webdriver = require('selenium-webdriver');
var driver = new webdriver.Builder().
withCapabilities(webdriver.Capabilities.chrome()).
build();
Без набора chromedriver в пути, это бросает ошибку:
Error: The ChromeDriver could not be found on the current PATH. Please download the latest
version of the ChromeDriver from http://chromedriver.storage.googleapis.com/index.html and
ensure it can be found on your PATH.
Я предпочел бы не настроить мой путь, так что я установил chromedriver от НПМ и добавил к моему package.json:
"scripts": {
"preinstall-chromedriver": "npm install",
"install-chromedriver": "node node_modules/chromedriver/install.js",
"pretest_e2e": "npm run install-chromedriver",
"test_e2e": "node release/test/rune2e.js"
},
Теперь я chromedriver установлен и может получить путь с require('chromedriver').path
, но у меня нет никакого способа прохождения это селен, мы bdriver. Кто-нибудь знает?
Я новичок в Node.js, есть ошибка во второй линии, как нет хрома внутри селен WebDriver, то вы тоже пишете 'вар chrome = require ('selenium-webdriver/chrome'); '. Выполняя все это, я все равно получаю сообщение об ошибке «SyntaxError: ошибка разбора /home/abc/node_modules/selenium-webdriver/package.json: Неожиданный токен/ « – Tripathi29
require ('selenium-webdriver/chrome') означает загрузить файл chrome.js внутри установки npm selenium-webdriver. Это должно работать нормально. Однако, я думаю, у вас может быть поврежден файл package.json (вы не должны видеть ошибку синтаксического анализа из неразрешенной ссылки). Вы внесли какие-либо изменения в этот файл? – jt000
yes Изменения, которые вы предложили сделать в пакете. Json – Tripathi29