selenium - Selenium IE11 - 无法打开 http://localhost:4200
问题描述
在某些非常特殊的情况下,我在 Selenium + IE11 中遇到了一个奇怪的错误。
我们运行 Selenium 测试,这些测试重用相同的浏览器窗口。在某些时候,它会停止加载该站点。我手动重新加载它并简要看到Failed to open http://localhost:4200
:
一秒钟后,它加载了 html 页面,但我认为它是从缓存中加载的,并且页面停留在“正在加载...”进度指示器。
F12 中的网络选项卡由于某种原因停止渲染(这是它在调整窗口大小几次后的样子 - 您可以清楚地看到以前重绘事件的伪影):
如果我打开一个新标签,它会从那里工作。一旦 IE11 卡在那个“状态”,我就不能让它在同一个选项卡中工作,即使我使用 Ctrl+Shift+Del 删除站点数据。
任何想法发生了什么?通过谷歌搜索,我根本找不到有关此Failed to open <URL>
错误的任何信息。
解决方案
在查看 Process Explorer 时找到了原因。
我还在 GitHub 中发现了这个未解决的问题:
IEDriverServer 导致 iexplore.exe 中的内存泄漏 #3861
问题是我们正在一个非常繁重的应用程序上测试一个复杂的场景,当 IE 消耗超过大约 1.5 GB 时,它就会挂起。此外,即使在几个小时内运行简单的 driver.findElement(By) 场景也会导致 IE 挂起而不释放内存。
我还发现了这个问题: Multiple tests on the same IEdriver instance - memory issues
推荐阅读
- java - 如何在 jdbcTemplate 中使用替换的通配符获取完整的 sql 脚本?
- c# - 在 MSSQL 数据库中写入多个数据/行而不会影响性能 - C#
- c++ - 如何使用 pushbullet api 实现通知器?
- c# - How update binding properties in other project viewmodel (UWP)?
- android - Android 操作系统稳定性/压力测试
- amazon-athena - Connect to Athena using SQL workbench
- bash - Wrap a single oversize column with awk / bash (pretty print)
- pdf - convert PDF to EPS to PNG without text
- algorithm - STL algorithm for splitting a vector into multiple smaller ones based on lambda
- qt5 - 如何从另一个头文件触发插槽