Антон Татаринов
Экспертный блог
Автор: Антон Татаринов Обновлено: 7 мин чтения

Использование чек-листов в тестировании: практическое руководство

В данной статье мы расскажем о том, что такое чек-листы в тестировании, для чего они нужны, в чем их отличия от тест-кейсов. А также разберем пример создания чек-листа.

Чек-лист тестирования игры со статусами Not Tested, Passed, Failed, Skipped - проверки настроек графики и геймплея в таблице Google Sheets

Что такое чек-лист в тестировании ПО

Чек-лист (Check List) - это список проверок, которые служат напоминанием о тех элементах, которые нужно проверить. Простым примером чек-листа может быть список продуктов, который мы составляем для похода в магазин.

Зачем нужны чек-листы в тестировании: 4 ключевые задачи QA

1. Подготовка к тестированию функционала до его реализации.

Сначала создается документация, на основании которой разработчики приступают к реализации определенного функционала. Тестировщики, в свою очередь, могут уже подготовить чек-лист для последующего тестирования. В процессе составления чек-листа они могут обнаружить некоторые противоречия в документации и сообщить о них. Таким образом, к моменту завершения разработки функционала, у тестировщиков уже будет понимание того, что собой представляет новая фича. А также будет подготовлен набор проверок для его тестирования, что значительно экономит время.

Часто в процессе разработки документация подвергается изменениям, поэтому чек-лист может потребовать некоторой корректировки. Тем не менее, это обычно быстрее, чем составление чек-листа с нуля.

2. Сведение к минимуму пропущенных проверок.

Когда пункты проверки фиксируются в списке, а не запоминаются в голове, уменьшается вероятность пропуска важных моментов. Такой подход облегчает обнаружение недостающих элементов в процессе тестирования. Кроме того, чек-листами можно делиться с коллегами. Например, можно предложить разработчику, ответственному за реализацию функционала, оценить составленный чек-лист на предмет пропусков важных аспектов. Если тестировщик недавно на проекте, полезно привлечь более опытного коллегу для оценки полноты покрытия функционала по чек-листу.

3. Для отчётности.

Допустим мы написали чек-лист и начали его прохождение. Чтобы сделать свою работу более прозрачной, стоит скинуть ссылку на чек-лист заинтересованному лицу. Теперь он сможет в режиме реального времени видеть, что уже протестировано, есть ли где-то ошибки и сложности. Обычно мы в Sunstrike указываем напротив каждой проверки её статус и комментарий.

4. Для регрессионного тестирования.

При внедрении нового функционала тестировщики создают чек-лист, который в дальнейшем адаптируется для регрессионного тестирования приложения. В процессе регрессионного тестирования, в отличие от первичного тестирования функционала, детальность проверок обычно сокращается, поскольку фокус смещается на проверку стабильности и взаимодействия новых функций с существующими. Таким образом, регрессионный тест обычно представляет собой набор чек-листов, каждый из которых отвечает за отдельный аспект или функционал, объединенных в один обширный чек-лист для всего приложения.

Чек-лист и тест-кейс: ключевые отличия, преимущества и недостатки

Преимущества:

  • Быстрота составления.

Чек-листы гораздо проще и быстрее составить, чем тест-кейсы. Например, если в чек-листе элемент проверки формулируется как «Авторизация с помощью Google», то в тест-кейсе он будет описан более подробно: «1. Открыть главную страницу, 2. Нажать кнопку ‘Войти’, 3. Выбрать вход через Google» и так далее. Благодаря более обобщенной форме записи, чек-листы позволяют быстрее приступить к тестированию функционала и переходить к следующим задачам.

  • Легче поддерживать.

Например, у нас изменилась часть функционала. Чтобы изменить чек-лист достаточно удалить или добавить какое-то количество пунктов. В случае с тест-кейсами нам необходимо не только добавлять или изменять заголовок тест-кейса, но и учитывать что шаги в нём тоже могли измениться. Получается опять чек-листы экономят много времени по сравнению с тест-кейсами.

  • Гибкость в использовании на различных платформах.

Чек-листы удобно составляются и выполняются в таких инструментах, как Google Sheets, которые предоставляются бесплатно и обладают удобными функциями настройки доступа, работы с формулами и так далее. Тест-кейсы конечно тоже можно писать и проходить в таблицах, но это очень не удобно. Для удобного написания и прохождения тест-кейсов нужны специальные Test Case Management (TCM) приложения, по типу TestRail. И они обычно не бесплатные.

Недостатки:

  • Сложность использования для новых сотрудников.

Основной недостаток даже грамотно составленных чек-листов заключается в том, что они могут быть менее понятны новым сотрудникам по сравнению с тест-кейсами. Новичок может сразу начать работу с тест-кейсами, в то время как для эффективного использования чек-листов требуется определенное знание проекта.

Например, если необходимо протестировать интерфейс на необычном разрешении экрана, отсутствующем в арсенале устройств команды, и приходится привлекать к тестированию коллегу из другого отдела, лучше подготовить для него детализированные тест-кейсы, а не чек-лист. Также в условиях высокой ротации кадров на проекте тест-кейсы могут быть более предпочтительным инструментом.

Как составить чек-лист тестирования: пример с глубиной покрытия

Чек-листы создаются на основе документации и реального использования функционала с помощью техник тест-дизайна. Самый простой способ составить чек-лист - идти от общего к частному, по блокам. То есть сначала выделить сущность по функционалу, а далее ее разбивать на все более мелкие части и уже переходить к описанию в действиях.

Тот же принцип дисциплинированного планирования помогает и в продакшене - например, наши команды игрового арт-аутсорсинга и рекламы для игр сначала разбивают бриф на отдельные deliverables, и только потом приступают к отрисовке.

Рассмотрим другие важные детали в чек-листе:

  • Глубина покрытия.

Вот пример чек-листа неглубокого уровня покрытия на проверку функционала «Прикрепление файла к сообщению»:

Пример чек-листа тестирования с поверхностным покрытием - таблица проверок функционала прикрепления файла к сообщению в Google Sheets

С таким чек-листом у тестировщика сразу возникает множество тестовых сценариев, которые также требуют проверки. Давайте распишем их в примере с более глубоким уровнем покрытия:

Пример чек-листа тестирования с глубоким покрытием - детальные проверки прикрепления файла по форматам, разрешениям и размерам

Когда мы тестируем фичу в первый раз, мы используем глубокое (оно же полное) покрытие. А, например, для регрессионного тестирования подойдёт средняя или минимальная глубина покрытия.

  • Дополнительные поля.

Удобно, когда напротив каждой проверки есть поле «Статус». Чаще всего мы используем следующие статусы: Not Tested, Passed, Failed, Skipped. Поле «Комментарий» тоже достаточно полезное, например можно сразу прикрепить ссылку на баг или написать почему пропущен пункт.

Заключение: чек-лист как основной инструмент QA-тестировщика

Овладение навыками составления и использования чек-листов является неотъемлемой частью профессионального инструментария каждого тестировщика. В умелых руках чек-листы становятся гибким инструментом, адаптируемым под любые требования и особенности проекта. Они могут быть эффективно использованы как в рамках командной работы, так и индивидуально, обеспечивая значительную поддержку в процессе тестирования. Тот же дисциплинированный подход помогает и при сдаче билдов на нашей линии 3D-арта для игр, где каждый ассет проходит чёткий набор проверок перед релизом.

Часто задаваемые вопросы о чек-листах в тестировании

+ Что такое чек-лист в тестировании?

Чек-лист - это список проверок, которые служат напоминанием о тех элементах, которые нужно проверить. Простым примером может быть список продуктов, который мы составляем для похода в магазин - применительно к QA это все аспекты функционала, которые надо пройти перед сдачей.

+ Чем чек-листы отличаются от тест-кейсов?

Чек-листы гораздо быстрее составить и поддерживать, потому что каждый пункт - это короткое напоминание вроде 'Авторизация через Google', а не пошаговый сценарий. Тест-кейсы описывают конкретные действия в деталях, что понятнее новичку, но дороже в написании и обновлении.

+ Когда использовать глубокое покрытие, а когда - поверхностное?

Глубокое (полное) покрытие нужно при первичном тестировании фичи, чтобы пройти все сценарии, которые подразумевает документация. Для регрессионного тестирования обычно достаточно средней или минимальной глубины - фокус смещается на стабильность и взаимодействие с уже существующим функционалом.

+ Какие поля полезны в чек-листе?

Помимо самой проверки обязательно нужно поле 'Статус' - мы используем Not Tested, Passed, Failed, Skipped. Поле 'Комментарий' тоже полезно: туда можно сразу прикрепить ссылку на баг или описать причину пропуска проверки.

ЧЕМ МЫ МОЖЕМ
ПОМОЧЬ? ДЕЛАЕМ
ИГРЫ ВМЕСТЕ

Каждый проект - это возможность для инноваций. Сочетая R&D-подход с творческой синергией, мы создаём уникальные визуальные решения, которые задают новые стандарты в играх и цифровом искусстве.

info@sunstrikestudios.com