Что такое альфа-тестирование?

Альфа-тестирование – это тестирование, которое проводится перед релизом ПО, оно относится к одному из видов приемочного тестирования. Такой вид тестирования является довольно формальным, и в нем не принимают участие конечные пользователи.

Альфа-тестирование проводится в тестовом окружении после релиза полностью нового продукта или после обновлений уже существующего. При данном виде тестирования осуществляется имитация поведения конечного пользователя в реальном времени.

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

Друзья, поддержите нас вступлением в наш телеграм канал QaRocks. Там много туториалов, задач по автоматизации и книг по QA.

Что такое альфа-тестирование?

Альфа-тестирование (Alpha Testing) – это методология оценки качества и стабильности тестируемого продукта в тестовом окружении.

Этот вид тестирования в основном направлен на выявление:

  • блокирующих и критичных дефектов
  • проблем с удобством использования
  • недостающего функционала
  • проблем совместимости/взаимодействия компонентов

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

Главный вопрос, который ставит перед собой альфа-тестирование: “Работает ли продукт?”.

Цели

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

Причинами проведения такого тестирования являются:

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

Когда проводится альфа-тестирование?

Этот вид тестирования обычно проводится сразу после этапа системного тестирования и/или во время системного тестирования, когда продукт готов на 70%-90%, перед этапом бета-тестирования.

Системное альфа бета тестирование

Тестирование происходит поэтапно:

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

Альфа-тестирование обычно проводится циклами, которые обычно называют циклами тестирования (Test Cycle), каждый цикл длится около 1 – 2 недель. Количество циклов зависит от функций, включенных в тест-планы, и количества проблем, выявленных на этом этапе тестирования.

Обычно в данный вид тестирования включают ряд кейсов приемочного и системного тестирования.

Заинтересованные стороны и участники

Заинтересованными сторонами на этапе альфа-тестирования обычно являются инженеры (штатные разработчики), команда обеспечения качества и команда управления продуктом.

Участниками этого тестирования будут как правило тестировщики:

  • Эксперты в предметной области.
  • Те, кто хорошо знают продукт.
  • Те, кто также участвовал в этапе системного тестирования продукта.
  • Технические эксперты.

Иногда клиенты или определенные конечные пользователи могут участвовать в тестировании альфа-версии продукта.

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

Стратегия альфа-тестирования

Как и любой другой этап тестирования, этот вид тестирования имеет стратегию, в которой четко определены цели и планы.

  • Подходы к выполнению данного вида тестирования и его участники документируются в тест-плане.
  • Функциональности и конкретные тесты, которые должны быть выполнены, выбираются и помечаются для тест-циклов.
  • Определяются виды тестирования – “черный ящик”, “белый ящик” и т.д.
  • Выбираются и прорабатываются тесты, которые должны быть автоматизированы.
  • Правила репортинга дефектов, проблем юзабилити, статусов исполнения тест-кейсов – все это хранится в виде готовых шаблонов и проверяется на корректность.

Основные шаги

Последовательность действий с точки зрения тестировщика:

  • Собрать и просмотреть функциональные требования из всех возможных доступных документов.
  • Как можно раньше устранить неоднозначности и вопросы по функциональным требованиям.
  • Разработать план альфа-тестирования и проверить его на полноту, правильность и т.д.
  • Разработать альфа-тесты для выбранных функций – они должны быть полными и точными.
  • Проверить альфа-тесты на плотность тестового покрытия для выбранных функциональностей, составить матрицу трассировки требований.
  • Определить наборы альфа-тестов для каждого цикла тестирования (нормальная практика, если их придется повторять в течение многих циклов).
  • Для циклов:
    • Выполнить альфа-тесты, как только альфа-версия продукта будет доступна для тестирования.
    • Зафиксировать дефекты – как функциональные, так и дефекты пользовательского интерфейса.
    • После устранения дефектов провести повторное тестирование.

Критерии входа:

  • Спецификации требований должны быть заморожены.
  • Системное тестирование должно быть:
    • Завершено и утверждено, в случае если альфа-тестирование начинается по завершении системного тестирования.
    • Завершено на 70% – 90% и есть уверенность, что можно приступать к альфа-тестированию.
  • Должны быть выбраны и подготовлены к работе участники тестирования.
  • Альфа-тесты должны быть разработаны и проанализированы.
  • Должно быть достигнуто полное тестовое покрытие для всех функциональных требований.
  • Тестовая среда должна быть настроена и стабильна.
  • Сборка для альфа-версии продукта должна быть готова и собрана с задокументированным полным описанием релиза.

Критерии выхода:

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

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

Существует ряд преимуществ проведения данного вида тестирования.

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

Заключение

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

Строго формализованное проведение альфа-тестирования помогает успешно достичь поставленных целей и приводит к высоким показателям удовлетворенности клиентов.

Перевод статьи «What is Alpha Testing? An Early Alarm for Defects».

3 комментария к “Что такое альфа-тестирование?”

  1. Пингбэк: Что такое гамма-тестирование?

  2. Пингбэк: Большой учебник по тестированию

  3. Пингбэк: A/B-тестирование

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *