Selenium在ChromeDriver中没有此类会话错误

Sha*_*han 16 selenium selenium-webdriver

当我从Jenkins运行脚本时,我经常没有遇到这样的会话错误.它的原因是什么?是否有任何连接失败或是由于其他原因(我运行了大约26个脚本,并且至少有一个脚本没有这样的会话错误)

脚本是不同的脚本,并且对于相同的脚本不会再次重复此类会话错误

cao*_*ish 9

我有时遇到过这种情况.我使用ChromeDriver和Laravel Dusk,而不是Selenium.但是,我认为原因在于ChromeDriver,而不是Selenium

ChromeDriver将在文件夹中创建一些缓存文件:C:\Users\(yourAccountName)\AppData\Local\Temp.在此文件夹中,您将看到许多看起来像的缓存文件夹scoped_dir1234_5678.每个文件夹大约占用10mb.如果Jenkins经常运行ChromeDriver,ChromeDriver可能会过多填充temp文件夹中的缓存文件.您应该考虑C驱动器上的30-50GB缓存文件,并充分利用您的C驱动程序.

当我的C盘空间不足时,ChromeDriver将无法启动,然后向我返回错误消息"Facebook\WebDriver\Exception\NoSuchDriverException:no such session".

解决方案:

  1. 转到temp文件夹,删除所有ChromeDriver缓存文件夹即可清理C空间.
  2. 创建可以删除/清理ChromeDriver缓存文件夹的脚本.

--UPDATE--

找另一种情况导致问题.

如果您运行相同的脚本以在同一操作系统上同时在两个不同的实例中启动ChromeDriver,则当一个实例完成并关闭chromedriver时,另一个Chrome浏览器实例也可能会关闭.

例如,您打开两个控制台并执行chromeDriver脚本,或者您的Jenkins项目同时启动.

我相信即使您运行不同的脚本但同时需要chromeDriver,由于Chrome浏览器实例关闭,其中一个脚本将"没有此类会话".

解:

  1. 在jenkins中安装构建阻止程序
  2. 在构建阻止程序中设置项目,目标项目需要等待它直到完成.

我的情况是使用没有硒的Laravel Dusk.我不确定当测试通过selenium服务器时是否会有所不同


归档时间:

查看次数:

23355 次

最近记录:

7 年,1 月 前