我爱new emulation feature introduced in the new Chrome。事实上,我喜欢用它来测试移动网站的多种分辨率/设备。为此,我需要对仿真功能进行某种控制。
有没有办法控制希望设备被模拟?
了解如何启动OpenQA.Selenium.Chrome.ChromeDriver
模拟移动设备会很高兴。
提前致谢。
答案 0 :(得分:0)
您可以尝试向Chrome驱动程序添加选项。
ChromeOptions options = new ChromeOptions();
options.addArguments("--user-agent=Mozilla/5.0 (iPad; CPU OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3");
在上面的示例中," user-agent"已提供开关。同样请尝试使用" window-size"命令行开关。
如果有效,请告诉我。
下面提供了所有chrome命令行开关的列表。
http://peter.sh/experiments/chromium-command-line-switches/
注意:通过安装下面给出的Chrome插件,您可以获得各种设备所需的用户代理设置。
https://chrome.google.com/webstore/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg
答案 1 :(得分:0)
以下是我在C#中的表现:
IWebDriver driver;
string setDevice = "Apple iPhone 6";
var mobileEmulation = new Dictionary<string, string> { { "deviceName", setDevice } };
var chromeOptions = new ChromeOptions();
chromeOptions.AddAdditionalCapability( "mobileEmulation", mobileEmulation );
driver = new ChromeDriver( chromeOptions );
driver.Manage().Timeouts().SetPageLoadTimeout( TimeSpan.FromSeconds( 90 ) );
driver.Manage().Timeouts().ImplicitlyWait( TimeSpan.FromSeconds( Convert.ToDouble( 30 ) ) );
return driver;