在python中使用selenium 2.47时出现间歇性httplib错误

2024-04-24 22:59:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用Selenium 2.47驱动Firefox28.0在应用内购买平台上进行一些基本的购买检查。由于以下原因,测试失败的几率约为30%

File "/path/Steps/do_something.py", line 19, in main
selenium_tearDown.tearDown(driver)
File "path/selenium_tearDown.py", line 7, in tearDown
driver.quit()
File "usr/lib/python2.7/site-packages/selenium/webdriver/firefox/webdriver.py", line 87, in quit
RemoteWebDriver.quit(self)
File "usr/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 483, in quit
self.execute(Command.QUIT)
File "/usr/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 199, in execute
response = self.command_executor.execute(driver_command, params)
File "/usr/atvirtualenv/lib/python2.7/site-packages/selenium/webdriver/remote/remote_connection.py", line 395, in     execute
return self._request(command_info[0], url, body=data)
File "/usr/lib/python2.7/site-packages/selenium/webdriver/remote/remote_connection.py", line 425, in _request
self._conn.request(method, parsed_url.path, body, headers)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 973, in request
self._send_request(method, url, body, headers)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 1001, in _send_request
self.putrequest(method, url, **skips)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 871, in putrequest
raise CannotSendRequest()
CannotSendRequest

测试试图关闭浏览器窗口,但未能关闭。在

只有在我们的Jenkins机器上运行测试时才会出现这个错误,因此当我在本地进行测试时,我不会得到相同的错误。这两个环境的引导都是相同的,并且运行相同版本的selenium、firefox等

这个问题在selenium的早期版本中出现过,但应该在2.39中修复。我尝试过回滚到2.39,但是我们使用的自定义浏览器配置文件开始失败。在

有人有什么建议吗?在


Tags: inpyselfremoterequestlibpackagesusr