Я пытаюсь создать набор тестов с pytest и Selenium, используя Page Object Models для проектирования шаблонов.Для использования моих классов страниц в моих тестах я просто импортировал их в свой метод TestClass __init__
, поскольку их нужно создавать с помощью драйвера.
Я знаю, что по умолчанию pytest игнорирует классы с __init__
метод.Я также знаю, прочитав здесь , что можно настроить, где pytest собирает тесты.Можно ли сделать так, чтобы он рассматривал тесты классов с __init__
вместо того, чтобы возвращать ошибку «Пустой набор»?
@pytest.fixture(scope="session")
def driver_init(request):
from selenium import webdriver
driver = webdriver.Chrome()
session = request.node
page = PageFunctions(driver)
login_page = LoginPage(driver)
registration_page = RegistrationPage(driver)
for item in session.items:
cls = item.getparent(pytest.Class)
setattr(cls.obj, "driver", driver)
setattr(cls.obj, "page", page)
setattr(cls.obj, "login", login_page)
setattr(cls.obj, "registration", registration_page)