chrome浏览器将视口设置为低于500像素?

时间:2019-05-09 07:52:42

标签: selenium-webdriver chrome-web-driver

在基于硒的测试中,我将窗口大小设置为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网络驱动程序中执行此操作?

1 个答案:

答案 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);