Учебники

Agile Testing — Квадранты

Как и в случае традиционного тестирования, гибкое тестирование также должно охватывать все уровни тестирования.

  • Модульное тестирование
  • Интеграционное тестирование
  • Тестирование системы
  • Пользовательское тестирование

Модульное тестирование

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

Интеграционное тестирование

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

Тестирование системы

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

Пользовательское тестирование

  • Сделано в конце каждого спринта и в конце проекта

  • Сделано Заказчиком. Обратная связь принимается командой

  • Обратная связь будет входом в последующие спринты

  • Пользовательские истории в спринте предварительно проверяются на возможность тестирования и имеют определенные критерии приемки

Сделано в конце каждого спринта и в конце проекта

Сделано Заказчиком. Обратная связь принимается командой

Обратная связь будет входом в последующие спринты

Пользовательские истории в спринте предварительно проверяются на возможность тестирования и имеют определенные критерии приемки

Типы испытаний

  • Тестирование компонентов (модульные тесты)
  • Функциональные тесты (тесты пользовательских историй)
  • Нефункциональные тесты (производительность, нагрузка, стресс и т. Д.)
  • Приемочные испытания

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

Поддержка программирования и критических тестов продукта

Тесты могут быть для —

  • Поддержка разработки (Support Programming) — Программисты поддерживают тесты программирования.

    • Чтобы решить, какой код они должны написать, чтобы выполнить определенное поведение системы

    • Какие тесты необходимо выполнить после кодирования, чтобы новый код не препятствовал остальному поведению системы

  • Только проверка (продукт Critique) — тесты продукта Critique используются для выявления недостатков в готовом продукте

Поддержка разработки (Support Programming) — Программисты поддерживают тесты программирования.

Чтобы решить, какой код они должны написать, чтобы выполнить определенное поведение системы

Какие тесты необходимо выполнить после кодирования, чтобы новый код не препятствовал остальному поведению системы

Только проверка (продукт Critique) — тесты продукта Critique используются для выявления недостатков в готовом продукте

Деловые и технологические испытания

Чтобы решить, какие тесты следует выполнять, когда вам нужно определить, является ли тест:

  • Бизнес, или
  • Облицовка технологий

Бизнес-тесты

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

Передовые технологии

Тест — это технологический тест, если он отвечает на вопросы, сформулированные словами из области технологий. Программисты понимают, что необходимо реализовать, основываясь на разъяснениях по технологии.

Эти два аспекта типов тестов можно просмотреть с помощью Agile Quadrants Testing, определенных Брайаном Мариком.

Agile Testing Quadrants

Объединяя два аспекта типов тестирования, Брайан Марик получил следующие квадранты гибкого тестирования:

Квадрантах

Agile Testing Quadrants предоставляют полезную таксономию, чтобы помочь командам определить, спланировать и выполнить необходимое тестирование.

  • Квадрант Q1 — Unit Level, Technology Facing, и поддерживает разработчиков. Модульные тесты принадлежат этому квадранту. Эти тесты могут быть автоматизированными тестами.

  • Квадрант Q2 — Системный уровень, отношение к бизнесу и соответствие поведения продукта. Функциональные тесты относятся к этому квадранту. Эти тесты либо ручные, либо автоматизированные.

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

  • Квадрант Q4 — уровень приемлемости системы или эксплуатации, технологический анализ и тестирование производительности, нагрузки, стресса, ремонтопригодности, масштабируемости. Для этих испытаний могут использоваться специальные инструменты, а также тестирование автоматизации.

Квадрант Q1 — Unit Level, Technology Facing, и поддерживает разработчиков. Модульные тесты принадлежат этому квадранту. Эти тесты могут быть автоматизированными тестами.

Квадрант Q2 — Системный уровень, отношение к бизнесу и соответствие поведения продукта. Функциональные тесты относятся к этому квадранту. Эти тесты либо ручные, либо автоматизированные.

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

Квадрант Q4 — уровень приемлемости системы или эксплуатации, технологический анализ и тестирование производительности, нагрузки, стресса, ремонтопригодности, масштабируемости. Для этих испытаний могут использоваться специальные инструменты, а также тестирование автоматизации.

Комбинируя их, гибкие квадранты тестирования, отражающие « что тестировать, когда», можно визуализировать следующим образом: