Найти в Дзене

Что такое "тестовая стратегия"?

Оглавление

Тестовая стратегия (test strategy) — это документ высокого уровня, который описывает общий подход к тестированию программного обеспечения для всего проекта или организации. Тестовая стратегия определяет методологии, инструменты, критерии и процессы, которые будут использоваться для достижения целей тестирования. Она служит руководством для разработки более детализированных тест-планов и других связанных документов.

Основные элементы тестовой стратегии могут включать:

  1. Название (Title) — краткое описание тестируемого проекта или системы.
  2. Введение (Introduction) — общее описание целей и контекста тестирования.
  3. Объем тестирования (Scope) — что будет и что не будет тестироваться.
  4. Цели тестирования (Test Objectives) — конкретные цели, которые должны быть достигнуты в процессе тестирования.
  5. Методологии и типы тестирования (Test Methodologies and Types) — подходы к тестированию и виды тестирования (функциональное, регрессионное, нагрузочное и т.д.).
  6. Инструменты и среда (Tools and Environment) — программные и аппаратные средства, которые будут использоваться для тестирования.
  7. Критерии входа и выхода (Entry and Exit Criteria) — условия, при которых тестирование может быть начато и завершено.
  8. Риски и меры по их снижению (Risks and Mitigation) — потенциальные проблемы и способы их предотвращения или минимизации.
  9. Роли и обязанности (Roles and Responsibilities) — распределение обязанностей среди членов команды.
  10. Метрики и отчётность (Metrics and Reporting) — показатели, которые будут использоваться для оценки качества тестирования, и способы их представления.
  11. Коммуникация (Communication Plan) — как будет осуществляться коммуникация внутри команды и с другими заинтересованными сторонами.

Пример хорошей тестовой стратегии:

Название:

Тестовая стратегия для проекта example.com.

Введение:

Этот документ описывает тестовую стратегию для проекта example.com, включая подходы, методологии и инструменты, которые будут использоваться для обеспечения качества программного обеспечения.

Объем тестирования:

  • Будет тестироваться:

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

  • Не будет тестироваться:

внутренние API, администраторские функции, интеграция с внешними системами.

Цели тестирования:

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

Методологии и типы тестирования:

  • Функциональное тестирование:

ручное и автоматизированное тестирование основных функций системы.

  • Регрессионное тестирование:

автоматизированное тестирование для проверки, что новые изменения не повлияли на существующую функциональность.

  • Нагрузочное тестирование:

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

  • Тестирование безопасности:

проверка уязвимостей и защиты данных пользователей.

Инструменты и среда:

  • Инструменты:

Selenium для автоматизации тестов, JIRA для отслеживания багов, JMeter для нагрузочного тестирования.

  • Среда:

тестовые серверы, идентичные производственной среде, с различными конфигурациями ОС и браузеров.

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

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

Все требования определены и утверждены.
Тестовая среда настроена и готова к использованию.
Все необходимые инструменты установлены и настроены.

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

Все тест-кейсы выполнены и пройдены.
Все критические и важные баги исправлены и проверены.
Нет открытых багов уровня критичности "блокирующий" или "критический".

Риски и меры по их снижению:

  • Риски:

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

  • Меры по снижению:

Регулярные встречи с командой разработки для отслеживания прогресса.
Использование облачных сервисов для тестирования на различных устройствах.
Постоянное обновление и пересмотр требований.

Роли и обязанности:

  • Тест-лид:

отвечает за координацию тестирования и выполнение плана.

  • Тестировщики:

выполняют тест-кейсы и сообщают о найденных дефектах.

  • Автоматизаторы тестирования:

разрабатывают и поддерживают автоматические тесты.

  • Аналитики:

анализируют результаты тестирования и составляют отчеты.

Метрики и отчётность:

  • Метрики:

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

  • Отчётность:

Еженедельные отчеты о статусе тестирования.
Финальные отчеты после завершения основных этапов тестирования.

Коммуникация:

  • Еженедельные встречи команды для обсуждения прогресса.
  • Ежедневные отчеты о статусе тестирования в JIRA.
  • Сообщения о критических проблемах — немедленно через Slack.

Хорошо составленная тестовая стратегия обеспечивает ясность и понимание среди всех участников проекта, способствует достижению поставленных целей и помогает в структурировании процесса тестирования.

Не забудьте подписаться на канал, чтобы не пропустить полезную информацию: QA Helper - справочник тестировщика

Пишите в комментариях какой пункт было бы интересно рассмотреть более подробно.

Обязательно прочитайте: Что должен знать и уметь тестировщик

Также будет интересно почитать: Вопросы которые задают на собеседовании тестировщикам