Chromedriver在测试后关闭

Sev*_*325 2 python selenium python-3.x selenium-chromedriver python-unittest

所以我的理解是调用driver.quit或close是关闭驱动程序和关联窗口的正确方法.

然而,当运行我的测试时,似乎即使没有调用driver.quit而是调用pass,窗口仍然关闭.

我正在使用python与通过pytest执行的unittest测试用例.我也通过Pycharm运行标准unitests.在所有情况下,浏览器都会按照描述关闭.我希望浏览器保持开放,我可以调试测试.我可以打电话给睡眠(9000),但这看起来很愚蠢.

此外,浏览器在某些计算机上注释退出时保持打开状态,但在具有相同chromedriver,Chrome版本和代码的其他计算机上则不会保持打开状态.

分析chromedriver日志,它似乎注册了一个QuitAll命令,但我不知道从哪里获取它.pyc文件可以不被覆盖吗?

退出代码:

def tearDown(self):
    pass
    # self.driver.quit()
Run Code Online (Sandbox Code Playgroud)

Luc*_*ney 7

由于此处的代码,脚本结束后服务将停止.

如果你想让chrome和chromedriver在之后保持打开状态,你可以detach在启动chromedriver时添加选项:

from selenium.webdriver import ChromeOptions, Chrome
opts = ChromeOptions()
opts.add_experimental_option("detach", True)
driver = Chrome(chrome_options=opts)
Run Code Online (Sandbox Code Playgroud)