В статье обсудим
Если вы собираетесь работать в QA, то наверняка столкнетесь с тест-планом. Это документ, на который ориентируется вся QA-команда. Давайте разберемся, из чего он состоит, зачем нужен и как его делают.
Что такое тест-план?
Тест-план — это документ, который описывает стратегию тестирования, цели, подходы и ресурсы для тестирования ПО. В нем обычно подробно расписывают задачи, которые нужно выполнить, и методы, которые будут использовать. Также указывают ресурсы и сроки этого проекта.
На тест-план ориентируется вся команда тестировщиков
Начинающие тестировщики могут запутаться в понятиях тест-плана и стратегии тестирования. Стратегия тестирования — это документ более высокого уровня, он не конкретизирует детали выполнения тестов, а скорее описывает общий подход к тестированию на уровне организации или проекта.
В небольших командах и проектах могут использовать только один документ — тест-план. Там указывают и стратегию, и задачи для конкретного проекта или этапа разработки.
Приходите на наш базовый курс “Основы тестирования”, чтобы разобраться в том, как проходит процесс тестирования, и дать быстрый старт вашей карьере в QA.
Основные элементы
Давайте разберем подробнее атрибуты тест-плана: то, без чего не обходится этот документ.
Цели и задачи тестирования
К проведению тестирования относятся как к проекту. Очевидно, что у любого проекта есть цели и задачи.
Цели тестирования — это то, чего вы хотите достичь в результате. Это может включать проверку соответствия ПО заявленным требованиям, поиск и исправление ошибок, обеспечение надежности продукта.
Задачи тестирования — это конкретные шаги, которые вы будете выполнять, чтобы достичь цели. Например, задачи могут включать функциональное тестирование, тестирование производительности, регрессионное тестирование и тестирование безопасности.
Объекты тестирования
Объекты тестирования — это те компоненты или функции, которые нужно протестировать. Важно сосредоточиться на конкретных объектах, чтобы не тратить время на тестирование второстепенных вещей, которые вы попутно сможете заметить в процессе.
Что может быть объектом тестирования:
- конкретные функции и модули (форма авторизации, процесс оплаты, рекламные баннеры),
- производительность,
- безопасность,
- удобство использования.
Методы тестирования
Есть разные подходы и техники, которые используют для тестирования. Обычно их выбирают после того, как определяют объект, который нужно изучить.
- Ручное тестирование — выполнение тестов вручную, например, чтобы проверить пользовательский интерфейс.
- Автоматизированное тестирование — использование скриптов и инструментов для автоматического выполнения тестов.
- Функциональное тестирование — проверка того, как программа выполняет заявленный функционал.
- Тестирование производительности — оценка работы системы при различных нагрузках.
- Тестирование безопасности — проверка на уязвимости и угрозы.
Ресурсы и инструменты
Ресурсами может быть персонал, оборудование и различный софт, необходимый для проведения тестирования. Весь набор ресурсов может меняться в зависимости от того, что нужно протестировать.
Среди инструментов тестировщика могут быть:
- Selenium для автоматизации тестирования,
- Jira для управления проектами и отслеживания ошибок,
- Postman для тестирования API.
Виды тест-планов
Можно использовать разные виды, в зависимости от целей тестирования и этапа, на котором сейчас находится процесс разработки.
Стратегический — это документ, который описывает общую QA-стратегию для проекта или организации. В нем план расписан широкими мазками: он охватывает цели и задачи тестирования, подходы, риски и ресурсы.
Тактический — это уже более детализированный документ, который описывает тестирование конкретного продукта, проекта или релиза.
Операционный — это документ, который описывает конкретную последовательность действий при тестировании: кто, что, когда и как должен сделать.
Что в итоге: стратегические тест-планы определяют общие цели и методы, тактические — детализируют их для конкретных проектов, а операционные планы отражают четкие инструкции для выполнения тестов.
Этапы разработки тест плана
Давайте приступим к написанию тест-плана. Для этого выполним следующие шаги.
1. Анализ продукта
Прежде чем что-то тестировать, нужно вникнуть, с чем вы будете работать. То есть проанализировать продукт, чтобы понять его функциональность, особенности и требования.
Нужно изучить документацию (требования и спецификации), а также ЦА: для кого разработали этот продукт и как его будут использовать. Полезно будет определить для себя основные функции этого ПО, чтобы сосредоточиться в первую очередь на их проверке.
2. Разработка стратегии тестирования
Теперь нужно зафиксировать цели и задачи: что вы будете тестировать. Затем определите, что и как будете для этого делать, какой тип тестирования больше подойдет для ваших задач.
Например, для тестирования приложения онлайн-банка можно провести функциональное тестирование перевода с карты на карту. Либо провести нагрузочное тестирование сервера.
3. Определение критериев тестирования
Здесь нужно записать, при каком условии будет начато тестирование (критерии входа) и в каком случае оно будет считаться завершенным (критерии выхода).
Например, тестирование можно начать, когда разработчики доработали один из модулей программы. Завершить тестирование можно, когда протестированы эти конкретные модули и задокументированы все найденные дефекты.
4. Планирование ресурсов и тестовой среды
В этой части нужно определить, кто из команды будет задействован в тест-стратегии (тестировщики, системные администраторы, разработчики, их обязанности). Также нужно записать, какое оборудование и ПО понадобится для тестирования: например, мобильный телефон с iOS.
Для проведения тестов нужно подготовить среду тестирования: например, настроить сервер, сеть, определенную ОС или аккаунт. Другими словами, нужно описать, как достичь тех условий, при которых нужно протестировать ПО.
5. Оценка затрат
Во-первых, нужно оценить временные затраты: сколько часов/дней/месяцев займет выполнение тестов. Во-вторых, это могут быть финансовые затраты: стоимость оборудования, если его нужно докупить, стоимость рабочих часов членов команды, которых нужно задействовать.
Примеры и шаблоны тест-плана
Единого принятого стандарта написания тест-плана не существует, поэтому в каждой компании могут привести свой пример test plan. QA-команды адаптируют общую структуру плана под себя. Оформить это можно как текстовый документ, майндкарту, таблицу или проект в Jira.
Качественный тест-план: пример
Вот здесь можно увидеть пример качественного тест-плана, где описаны цели проекта и подробные шаги, как этих целей достичь. Вы сможете увидеть, какие формулировки использовать, как заполнять цели и задачи проекта.
Лучшие практики при создании тест-плана
Есть несколько проверенных способов, как сделать тест-план актуальным и полезным для команды и всего проекта в целом.
Инкрементальное обновление тест-плана
Проекты часто меняются: появляются новые требования и риски, меняются приоритеты. Поэтому вместо того, чтобы создавать один большой документ на весь срок проекта, можно обновлять и дополнять план тестирования по мере прогресса в разработке. Например, можно учитывать изменение требований к продукту или выявление новых рисков.
Общая тест-стратегия в проекте может оставаться неизменной (подходы, ресурсы, команда). А вот тест-план лучше регулярно обновлять. Тогда он всегда будет отражать текущие реалии проекта. Другими словами, он будет не просто документом, а актуальным и полезным планом для действий.
Вовлечение всех заинтересованных сторон
Хорошо, когда к процессу разработки тест-плана можно привлечь всех, кто имеет отношение к проекту: разработчиков, менеджеров, бизнес-аналитиков и, при необходимости, конечных пользователей.
Это поможет учесть мнения и требования всех заинтересованных сторон, выявить скрытые риски. К тому же это поможет сплотить команду, которая работает над продуктом: все будут понимать, что и зачем они делают и к чему идут.
Часто задаваемые вопросы о тест-плане
- Что такое тест-план и зачем он нужен?
Тест-план — это документ, который составляют для описания стратегии, целей, методов и ресурсов для тестирования ПО. Этот план позволяет упорядочить процесс тестирования, определить четкие задачи и распределить роли.
- Какие атрибуты включает качественный тест-план?
Качественный тест-план должен быть емким и понятным. Для этого в нем фиксируют цели и задачи. Они определяют, чего нужно достичь в ходе проверки, а также сроки проекта и критерии, при которых план будет считаться выполненным. Документ должен включать объекты (что будут тестировать) и методы тестирования (как именно будут тестировать). А еще в плане обычно указывают ресурсы и инструменты, необходимые для тестирования.
- Как написать тест-план с нуля?
Нужно начать с анализа продукта, чтобы понять его функции и требования. Затем определить цели и задачи тестирования — чего конкретно нужно достичь и какие аспекты продукта нужно проверить. После этого выбрать методы тестирования: ручное, автоматизированное, функциональное, регрессионное и так далее. Важно определить и критерии тестирования (что нужно для старта и завершения тестов).
Следующий шаг — определение ресурсов, включая людей, оборудование и инструменты. И последнее: нужно создать расписание, в котором будут указаны сроки выполнения тестов, чтобы команда могла эффективно планировать свою работу и отслеживать прогресс.
- Какие виды тест-планов существуют и когда их использовать?
Есть три основных вида: стратегический, тактический и операционный. Стратегический тест-план охватывает общий подход к тестированию, описывает общие цели и стратегию. Тактический тест-план с более четкими задачами разрабатывают под отдельные продукты или релизы. Операционный тест-план нужен, чтобы отразить конкретные задачи с четкими инструкциями для выполнения тестов.
- Как поддерживать актуальность тест-плана на протяжении проекта?
Нужно регулярно его обновлять, внося изменения по мере того, как продвигается проект: появляются новые требования, функции, риски. Тогда тестирование будет более прицельным и эффективным.
Заключение
Тест-план помогает организовать и структурировать процесс тестирования. Он помогает двигаться к общей цели команды — обеспечить высокое качество продукта. Поэтому без него как без рук. Желаем успехов в изучении процессов тестирования! Мы в QA Academy всегда рады новым студентам и готовы помочь вам подобрать обучение под ваш запрос.