Проверить требования на тестируемость
Найти неясные формулировки, пропуски и противоречия до начала тестирования.
Система контроля качества
Практическая база для тестирования продукта: требования, тест-дизайн, тестовая среда, дефекты, регрессия, релизная приемка и автоматизация. Каждый пункт объясняет, зачем он нужен, как его выполнить, как проверить результат и какой артефакт должен остаться у команды.
РегламентПрогресс хранится только в этом браузере.
Риски, вопросы, критерии
QA начинается не с кликов по интерфейсу, а с проверки требований на полноту, ясность, противоречия и тестируемость.
Найти неясные формулировки, пропуски и противоречия до начала тестирования.
Понять, где дефект нанесет наибольший вред пользователю или бизнесу.
Создать данные для позитивных, негативных и граничных сценариев.
Сценарии, техники, покрытие
Тест-дизайн помогает выбрать достаточный набор проверок: не тестировать все подряд, но закрыть важные риски.
Описать проверки так, чтобы их мог выполнить другой QA или разработчик.
Использовать классы эквивалентности, граничные значения, таблицы решений и pairwise.
Построить traceability между требованиями, тестами и дефектами.
Среды, данные, дефекты
На этапе выполнения QA проверяет продукт системно: с понятными данными, окружением, фиксацией результата и воспроизводимыми дефектами.
Быстро проверить, что сборка пригодна для дальнейшего тестирования.
Зафиксировать дефект так, чтобы разработчик мог быстро понять и воспроизвести проблему.
Проверить, что конкретный дефект исправлен и не повторяется на указанных данных.
Smoke, regression, приемка
Перед релизом важно проверить не только новую функцию, но и критические старые сценарии, которые могли сломаться.
Выбрать набор проверок, который защищает важные старые сценарии перед релизом.
Сформулировать состояние качества и риски, чтобы команда могла принять release decision.
Понять, почему дефект дошел до production и как улучшить процесс.
Пирамида, стабильность, CI
Автоматизация полезна, когда она снижает повторяемую ручную работу и дает быстрый сигнал о регрессии, а не создает отдельный хрупкий проект.
Определить проверки, которые дают ценность при регулярном автоматическом запуске.
Выявлять нестабильные автотесты и быстро возвращать доверие к тестовому набору.
Запускать нужные уровни тестов автоматически на pull request, merge и релизных сборках.