Selenium – 随机“IE驱动程序的命令行服务器已经停止工作”几个小时后

我公司的电子商务网站有几百个selenium测试。 特别是,其中大约一半是结账测试,差异很小(签证的单身人士,美国运通的多人团队等)。 我提到这一点是因为所有这些测试都使用几乎完全相同的代码,只是略有不同。

这些测试是从Jenkins开始使用Selenium Grid作为集线器并部署到同时运行Chrome和IE测试的Windows Server 2012 VM。 开始我的测试后,几个小时后我会得到一个浏览器弹出窗口,说Command line server for the IE Driver has stopped working还有一个Close the program的按钮。 这会导致测试执行挂起。

我曾尝试升级到VM上最新版本的网格,以及最新版本的IE驱动程序服务器。 我还写了一个小的rest服务器,在每次测试开始时运行Runtime.getRuntime().exec("taskkill /F /IM IEDriverServer.exe") (我以为可能一次打开太多窗口导致错误,但即使有这个修复它也没有帮助)。 我还尝试将TabProcGrowth添加到HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main到注册表,但这只是导致在每个测试开始时打开多个窗口,这进一步打破了局面。

另外,我已经实现了一个重试分析器,它将重试失败的测试。 手动单击Close the program ,测试将重新启动,几乎总是通过。 考虑到这一点,以及结账测试的性质,我认为问题不是代码问题。

我已经试了几天才能解决这个问题。 任何帮助将不胜感激!