У меня есть набор тестов селен до конца.Я создаю экземпляр одного webdriver.ChromeDriver
экземпляра, который передаю в качестве прибора для каждого теста в наборе.
'''python3
@pytest.fixture(scope="session")
def driver(request):
return d(request)
'''
После последнего запуска теста я хочу закрыть экземпляр веб-драйвера с помощью driver.quit()
.
Я могу сделать это с помощью приспособления
@pytest.hookimpl(trylast=True)
def close_after_test_suite(driver, requests):
if requests:
driver.quit()
Однако это выполняется только в том случае, если тесты не дают сбоя во время набора.Если каждый тест пройден, браузер закроется.Если один тест не пройден, браузер останется открытым.
Как я могу использовать pytest, чтобы закрыть браузер в конце набора тестов, независимо от того, провалились ли тесты или нет?