在 Selenium WebDriver 测试中尝试 .quit() Chrome 时如何解决“访问被拒绝”错误?

软件测试 硒2 网络驱动程序
2022-01-20 18:58:04

任何人都知道在 Selenium WebDriver 测试中尝试 .quit() Chrome 时如何解决间歇性的“访问被拒绝”错误?这种情况大约有 10 次发生。

这是回溯:

Traceback (most recent call last):
  File "C:\blah.py", line 30, in blah_test
    self.browser.quit()
  File "C:\Python27\lib\site-packages\selenium-2.15.0-py2.7.egg\selenium\webdriver\chrome\webdriver.
py", line 62, in quit
    self.service.stop()
  File "C:\Python27\lib\site-packages\selenium-2.15.0-py2.7.egg\selenium\webdriver\chrome\service.py
", line 94, in stop
    os.kill(self.process.pid, signal.SIGTERM)
WindowsError: [Error 5] Access is denied

代码是(我在这里简化了):

from selenium import webdriver
self.browser = webdriver.Chrome()
self.browser.quit()

我在 Windows 7 上使用最新的 ChromeDriver.exe(我认为是 17 版)和最新的 Selenium(2.15)和 Python 2.7.x。

2个回答

我没有遇到过,但如果它是 Selenium 中的一个错误,最简单的解决方法是将它包围在 try/catch 中并重试几次。我会通过询问(或搜索现有答案)这是否是 Selenium 用户论坛上的已知问题来跟进。

我认为这个问题与 Selenium 本身无关,而是与 Windows 7 上的 python 有关(因为它属于os.kill方法)。如何解决它我不知道,但在使用单词时发现了一些类似的问题:在搜索引擎上访问被拒绝进程 python windows 7 。