urllib3.exceptions.MaxRetryErro:

错误:urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host=‘127.0.0.1’, port=9411): Max retries exceeded with url: /session/8b9f22e1b057e9ff1920333fd46f3d9d/element (Caused by NewConnectionError(‘<urllib3.connection.HTTPConnection object at 0x053EC610>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。’))

问题分析
在使用python+selenium做UI自动化时,单个脚本执行通过,多个脚本执行时,执行到第二个时失败。

在tear_down中都调用了driver的quit方法,按照上述程序的执行过程,应该没有什么问题,应该全部都可以执行成功的。

百度了很多,都没有得到解决。

最终断点发现,其实在执行第二个 test方法时,还是使用的第一个test中实例出来的driver,而此时第一个test中的driver已经被设置为None了。

但此时还去使用为None的driver去做操作(例如做:self.driver.find_element_by_css_selector())。因为driver为None,即ChromeDriver开启的服务不存在了,因此Urlib中报错了。

解决方法

每次执行test方法时都使用同一个 driver 对象即可。

小结:

所以上面的核心是,如果用已经quit() 的driver去做 操作就会包出错。

当出现上述 “urllib3.exceptions.MaxRetryError” 时,先检查一下你的driver对象是不是已经做了quit()了。

————————————————
版权声明:本文为优快云博主「Best陈维」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/u012205706/article/details/111982545

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值