Вопрос проверяет практический опыт использования стеков технологий для автоматизации и отчётности.
Для написания тестов используется Python (pytest), для веб-автоматизации — Selenium WebDriver, а для отчётности — Allure. Python обеспечивает гибкость скриптов, Selenium — взаимодействие с браузером, Allure — создание наглядных HTML-отчётов.
Python + pytest:
Язык и фреймворк для тестов: структура, фикстуры, параметризация.
Плагины: pytest-xdist (параллельный запуск), pytest-rerunfailures.
Selenium WebDriver:
Управление браузером (Chrome, Firefox, Remote).
Поиск и взаимодействие с элементами, ожидания.
Пример:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://example.com")
driver.find_element_by_id("btn").click()
driver.quit()Allure Report:
Сбор результатов через плагин: pytest --alluredir=reports.
Генерация HTML: allure serve reports.
Аннотации для шагов и вложений:
import allure
@allure.step("Логин пользователя")
def login():
...Дополнительные инструменты:
requests для API-тестов.
selenium-grid или Selenoid для параллельных browser-тестов.
Когда применять:
Комплексное тестирование UI и API с единым стеком.
Генерация подробных отчётов для команды QA и разработчиков.