在基于硒的测试中,我将窗口大小设置为400(w)719(h),以创建400x640的内部视口大小。我的大多数测试都是基于该尺寸,尽管有些使用其他尺寸。
Dimension size = new Dimension(400, 719);
driver.manage().window().setSize(size);
较新的chrome版本无法将窗口大小设置为400像素宽度,但是,结果窗口宽度约为500像素(尽管有所不同)。
https://bugs.chromium.org/p/chromedriver/issues/detail?id=2639 (错误,声称已修复,但似乎不是)
因此,我想设置内部视口的大小。
如何在Selenium / chrome网络驱动程序中执行此操作?
答案 0 :(得分:1)
您可以看看chromedriver Moblie Emulation。
如此处所述
java示例
Map<String, Object> deviceMetrics = new HashMap<>();
deviceMetrics.put("width", 360);
deviceMetrics.put("height", 640);
deviceMetrics.put("pixelRatio", 3.0);
Map<String, Object> mobileEmulation = new HashMap<>();
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 chromeOptions = new ChromeOptions();
chromeOptions.setExperimentalOption("mobileEmulation", mobileEmulation);
WebDriver driver = new ChromeDriver(chromeOptions);