【发布时间】:2018-06-20 15:41:48
【问题描述】:
以下是我的设置的详细信息:
铬=67.0.3396.87, 铬驱动程序=2.40.565498, selenium 版本-2.53.0
下面是模拟器代码-
public ChromeOptions getChromeEmulators(int width, int height) {
Map<String, Object> deviceMetrics = new HashMap<String, Object>();
Map<String, Object> mobileEmulation = new HashMap<String, Object>();
ChromeOptions chromeOptions = new ChromeOptions();
try {
deviceMetrics.put("width", width);
deviceMetrics.put("height", height);
deviceMetrics.put("pixelRatio", 3.0);
mobileEmulation.put("deviceMetrics", deviceMetrics);
mobileEmulation.put("userAgent",
"Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D)
AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile
Safari/535.19");
chromeOptions.setExperimentalOption("mobileEmulation", mobileEmulation);
}catch (Exception e) {
e.printStackStarce();
}
return chromeOptions;
}
点击选项不适用于 chrome 模拟器,但适用于以上版本的 chrome 浏览器。有人可以帮忙吗?
【问题讨论】:
-
尝试将您的 selenium 升级到最新版本
-
我修复了您的代码格式,但您仍然缺少其他信息。详情请阅读minimal reproducible example。
-
什么是错误,它的给予
-
示例步骤是-'driver.findElement(By.id("j_username")).sendKeys(username); driver.findElement(By.id("j_password")).sendKeys(password); driver.findElement(By.id("login")).click(); driver.findElement(By.id("SiteNavigationIcon")).click();'它在上述步骤中单击登录按钮,但没有任何反应(登录后不显示主页)。所以在下一个元素上给出错误点击“无法定位元素”。
-
用 JavascriptExecutor 试过了。但是在每个脚本点击方法中都需要替换为 JavascriptExecutor 脚本点击。 JavascriptExecutor js = (JavascriptExecutor) 驱动程序; js.executeScript("arguments[0].click();",element);需要尝试更新硒版本。但是,如果有任何其他方法,请告诉我。
标签: google-chrome selenium selenium-chromedriver mobile-emulator