Вопросы по Автоматизация тестирования
Пирамида, локаторы, ожидания и флаки, Playwright и Selenium, pytest, Jest и Vitest, API-автотесты, CI и Allure. Закрывает техническую секцию собеса на QA-автоматизатора: и теорию, и задачи на код, и ревью чужих тестов.
Проверьте себя: тест по автоматизации тестирования
20 вопросов, 10 минут, уровень junior, middle или senior
Пирамида и стратегия
Что автоматизировать, пирамида тестов, ROI, смоук и регресс, тестовые данные.
Урок: Пирамида и стратегия автоматизации за 7 минут 7 мин- Пирамида тестирования
- Смоук, санити, регресс
- Подготовка тестовых данных
- Антипаттерн «рожок мороженого»
- Зависимые тесты
- Уровни тестов и их назначение
- Как мерить пользу автоматизации
- Порядок внедрения автотестов
Ещё 10 вопросов и задач
- Какие тесты в основании пирамиды тестирования
- Форма тестового набора по числу тестов
- Ревью: тесты связаны цепочкой
- Когда автоматизация не окупается
- Смоук или регресс
- Объясните пирамиду тестирования
- Стратегия автоматизации с нуля
- Отбор тестов по выражению меток
- Тестовый трофей для фронтенда
- Что автоматизировать в первую очередь
Локаторы
CSS, XPath, роли и data-testid: как выбрать устойчивый локатор.
Урок: Локаторы без боли за 7 минут 7 мин- Выбор лучшего локатора по атрибутам
- contains(@class) и похожие классы
- Что умеет XPath, но не CSS
- XPath: кнопка в строке таблицы
- Признаки хорошего локатора
- Относительные локаторы Selenium 4
- Оси XPath
- Линтер хрупких селекторов
Ещё 11 вопросов и задач
Ожидания и флаки
Явные и неявные ожидания, поллинг, ретраи и борьба с нестабильными тестами.
Урок: Ожидания и флаки за 8 минут 8 мин- Задержки экспоненциального бэкоффа
- Явное ожидание в Selenium на Python
- Найти флаки по истории прогонов
- Что такое флаки-тест
- Явное ожидание
- Причины флаки
- Карантин флаки
- Что ждёт неявное ожидание
Ещё 12 вопросов и задач
- Смешивание неявных и явных ожиданий
- Порядок разбора флаки-теста
- Что проверяет Playwright перед кликом
- Часы для поллинга
- Симуляция поллинга с таймаутом
- Ретраи и флаки
- На какие ошибки ретраить запрос
- Ретрай только на временные ошибки
- Ревью: ожидания в Selenium-тесте
- Как вы боретесь с флаки
- Ожидания в UI-тестах
- Чем плох sleep в автотесте
Playwright
Автоожидание, локаторы, web-first assertions, контексты, фикстуры, трейсы.
Урок: Playwright за 8 минут 8 мин- Конфиг Playwright для CI
- codegen
- expect.soft и expect.poll
- Трейс Playwright
- API Playwright и назначение
- Авторизация один раз
- Что такое BrowserContext
- Таймауты Playwright по умолчанию
Ещё 10 вопросов и задач
Selenium и WebDriver
Протокол WebDriver, Selenium 4, ожидания, исключения, Grid.
Урок: Selenium и WebDriver за 8 минут 8 минPage Object и архитектура
Page Object, компоненты, слои фреймворка, билдеры тестовых данных.
Урок: Page Object и архитектура фреймворка за 7 минут 7 минpytest и фикстуры
Фикстуры и их скоупы, conftest, параметризация, маркеры, плагины.
Урок: pytest и фикстуры за 8 минут 8 минJest и Vitest
Структура тестов, матчеры, моки, фейковые таймеры, покрытие.
Урок: Jest и Vitest за 7 минут 7 минAPI-автотесты
Клиент, проверки ответа, схемы, тестовые данные, контрактные тесты.
Урок: API-автотесты за 8 минут 8 мин- 401 или 403
- Обход пагинации по курсору
- Consumer-driven contracts
- Идемпотентные методы
- Сравнение с эталонным ответом
- Разница двух JSON-ответов
- Мини-валидатор схемы ответа
- Достаточно ли проверить статус
Ещё 11 вопросов и задач
CI и параллельный запуск
Автотесты в пайплайне, шардинг, воркеры, изоляция данных, артефакты.
Урок: Автотесты в CI и параллельный запуск за 8 минут 8 мин- Когда выгружать отчёт
- Шарды по длительности тестов
- Развернуть матрицу джоб
- fail-fast в матрице
- Запуск только затронутых тестов
- Волны запуска джоб по needs
- Что запускать на пул-реквест
- Где хранить пароль тестового пользователя
Ещё 11 вопросов и задач
Отчётность и Allure
JUnit XML, Allure: шаги, вложения, статусы, история и разбор падений.
Урок: Отчётность и Allure за 7 минут 7 мин