Доступ к параметрам Chrome в JavaScript (необязательно: из теста Галена)
Я использую Galen (инструмент JS для тестирования макета HTML-страницы). Он настроен из файла.js, который не может использовать ES6 JS:-(
Мне нужно загрузить / изменить ChromeOptions
из драйвера Chrome, но я не могу понять, как получить к нему доступ. Я вижу много примеров того, как установить параметры, но когда я делаю это, используя:
var options = new chrome.Options();
Я получаю сообщение об ошибке: ReferenceError: "chrome" is not defined
Я пытался использовать require()
а также load()
функции, но с требованием я получаю похожие не определенные ошибки (я думаю, проблема ES6), и с нагрузкой я не могу указать на сценарий работает, я пытался:
load("../../npm_modules/selenium-webdriver")
load("../../npm_modules/selenium-webdriver/chrome")
load("chrome")
etc.
Кажется, что это не веб-драйвер, который использует Гален, но как мне найти тот, который он использует? и является load()
что использовать, чтобы загрузить его?
1 ответ
Гален использует Rhino JS Engine. Это означает, что вы можете напрямую вызывать классы Java из файла.js, который его настраивает, что позволяет получить такой ответ:
importClass(org.openqa.selenium.chrome.ChromeOptions);
importClass(org.openqa.selenium.chrome.ChromeDriver);
var options = new ChromeOptions();
options.addArguments("--headless");
var driver = new ChromeDriver(options);
Хитрость заключается в том, чтобы узнать, как импортировать нужный класс из драйвера Selenium Chrome!
Нашел это на сайте групп Google Галена. Использовал Selenium HQ API, документированный на GitHub, для дальнейшего расширения того, что я делал. НТН.