Открыть Chrome с активированной панелью инструментов устройства
Я работаю с Java в Selenium, и мне нужно автоматизировать некоторые тесты, некоторые из которых должны использовать Chrome Headless и Mobile Emulation. Я знаю, как открыть chrome с "--auto-open-devtools-for-tabs" и с "mobileEmulation", но мне нужно открыть его с активированной панелью инструментов устройства. В этом режиме эмулируются события сенсорного взаимодействия, заменяя щелчок на прикосновение. Как я могу запустить Chrome в этом режиме? (Я использую ChromeDriver v.2.358161)
Вот мой код:
(...)
Map<String, String> mobileEmulation = new HashMap<String, String>();
mobileEmulation.put("deviceName", "Galaxy S5");
ChromeOptions headlessOptions = new ChromeOptions();
headlessOptions.setExperimentalOption("mobileEmulation", mobileEmulation);
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability(ChromeOptions.CAPABILITY, headlessOptions);
driver = new ChromeDriver(capabilities);
(...)
Какой новый аргумент я должен добавить?
(Я сделал робота, нажав Ctrl+Shift+M, но это не работает с Chrome Headless).
protected void pressModoResponsive() throws AWTException {
pressF12();
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_SHIFT);
waitSleep(1);
robot.keyPress(KeyEvent.VK_M);
waitSleep(1);
robot.keyRelease(KeyEvent.VK_M);
robot.keyRelease(KeyEvent.VK_SHIFT);
robot.keyRelease(KeyEvent.VK_CONTROL);
}
0 ответов
У меня такая же проблема. Я не мог заставить WebDriver имитировать мобильное устройство на селене.
Обходной путь заключается в добавлении аргумента:--auto-open-devtools-for-tabs
, затем переключите устройство на мобильное устройство и оставьте сеанс, сохраненный с помощью--user-data-dir