在 IE11 上运行时,我的脚本的性能非常缓慢。我的一些脚本在 chrome 上运行需要 2-3 分钟,而在 IE 上需要超过 25 分钟。我正在使用机器人框架,我的大多数定位器都是 xpath。我的应用程序没有元素的 ID 定位器。出于实验目的,我尝试切换到 CSS,但性能提高了一点点。据我了解,由于 IE 没有本机 xpath 引擎,因此 IEdriverserver 使用 wicked-good-xpath 进行解析。这个 xpath 库应该是最快的。我可以做任何其他修改/增强来提高我的脚本的性能。
问问题
477 次
1 回答
1
如果您使用的是64-bit
IEdriverserver,则需要将其替换32-bit
为 IEdriverserver,因为64 位的 IEdriverserver 执行速度非常慢。
确定IE驱动的根本原因。当您在 64 位版本的 Windows 上运行 IE 10 或更高版本时,默认情况下,托管包含浏览器镶边(地址栏、导航按钮、菜单等)的包含窗口的进程是 64 位进程。承载实际呈现内容的窗口的进程(在每个选项卡内)是一个 32 位进程。
一些笔记。细心的读者可能已经意识到,这意味着即使您运行的是 64 位 Windows,您也很可能使用 32 位版本的 IE 来呈现内容。这是继续为 IE 10 及更高版本使用 32 位版本的 IE 驱动程序的有力论据:您实际上并没有针对 64 位版本的 IE 运行。
如果您坚持必须运行 64 位版本的 IEDriverServer.exe,您可以通过nativeEvents
使用您的语言绑定为此提供的任何机制将功能设置为 false 来禁用本机事件。
希望能帮助到你..:)
于 2016-07-30T09:44:06.770 回答