ale*_*cxe 40 performance selenium google-chrome bandwidth-throttling selenium-webdriver
谷歌Chrome 38 在devtools中引入了新的"设备模式和移动仿真"功能.除了选择用于仿真的设备之外,还可以模拟不同的网络条件:
在不同的网络条件下优化网站的性能是开发移动受众的关键方面.
设备模式的网络调节允许您在各种网络连接上测试您的站点,包括Edge,3G甚至离线.从预设下拉列表中选择一个连接以应用网络限制和延迟操作.
例如,我们可以将它设置为好日子 - GPRS 50 Kbps:

现在我们有一个很好的用例 - 我们有一个用于网络速度测试的内部应用程序.这种新的仿真功能对手动测试非常有用.但是,我们希望自动化它.
问题是:
是否可以通过指定网络条件下的硒开始镀铬?它可以通过chrome首选项或命令行参数来控制吗?
当然有多种选择来模拟慢速互联网连接,但问题是关于chrome + selenium.
Yar*_*min 31
用于控制网络仿真的API 已添加到ChromeDriver中.现在应该可以使用一段时间了.根据链接问题中的评论,你应该使用至少2.26的版本,因为一些错误修复.
根据Selenium,changelog绑定可用于以下语言:
如果您需要其他语言的这些绑定,您应该打开类似于上述之一的问题/贡献实现.
Python的示例用法如下:
driver.set_network_conditions(
offline=False,
latency=5, # additional latency (ms)
download_throughput=500 * 1024, # maximal throughput
upload_throughput=500 * 1024) # maximal throughput
Run Code Online (Sandbox Code Playgroud)
Pau*_*aul 14
不可以,无法通过Chrome首选项或命令行参数控制网络连接模拟.网络连接仿真是内置Chrome调试器的一部分.解决此问题的一种方法是控制调试器.这可以通过扩展或直接控制调试器来完成,请参阅说明.但是,这不适用于WebDriver.原因是只能有一个"调试"会话,WebDriver已经在使用它,请参阅说明.由于没有公共接口,因此也无法通过WebDriver控制它.
对于设备模式和移动仿真,它也是内置调试器的一部分,有一个公共接口(细节),因此可以控制.这可以通过WebDriver功能完成.两个选项1)指定设备名称2)输入您自己的参数(有限).
小智 6
您可以使用此方法在指定的网络条件下运行您的测试用例
protected void networkThrotting() throws IOException {
Map map = new HashMap();
map.put("offline", false);
map.put("latency", 5);
map.put("download_throughput", 500);
map.put("upload_throughput", 1024);
CommandExecutor executor = ((ChromeDriver)driver).getCommandExecutor();
Response response = executor.execute(
new Command(((ChromeDriver)driver).getSessionId(), "setNetworkConditions", ImmutableMap.of("network_conditions", ImmutableMap.copyOf(map)))
);
}
Run Code Online (Sandbox Code Playgroud)
实际上,最新的C#Selenium(3.11)已添加NetworkConditions。现在您可以像这样使用它:
var driver = new ChromeDriver(pathToDriver);
driver.NetworkConditions = new ChromeNetworkConditions()
{ DownloadThroughput = 5000, UploadThroughput = 5000, Latency = TimeSpan.FromMilliseconds(5) };
Run Code Online (Sandbox Code Playgroud)
问题是由于该错误,它尚未可用
因此,.Net团队将不得不等到3.12 Selenium发布。
| 归档时间: |
|
| 查看次数: |
16088 次 |
| 最近记录: |