Учебники

Agile Testing — Методологии

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

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

Проектная группа

Непрерывная интеграция, постоянное качество

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

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

Agile методологии

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

Scrum

Scrum — это метод Agile-разработки, который делает упор на командно-ориентированный подход. Он выступает за участие всей команды во всех мероприятиях по разработке проекта.

XP

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

кристалл

Кристалл основан на фрахтовании, циклической доставке и упаковке.

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

  • Циклическая доставка с двумя или более циклами доставки фокусируется на этапе разработки и окончательной комплексной доставки продукта.

  • Во время завершения работы выполняется развертывание в пользовательской среде, анализ и анализ после развертывания.

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

Циклическая доставка с двумя или более циклами доставки фокусируется на этапе разработки и окончательной комплексной доставки продукта.

Во время завершения работы выполняется развертывание в пользовательской среде, анализ и анализ после развертывания.

FDD

Feature Driven Development (FDD) включает в себя проектирование и сборку элементов. Разница между FDD и другими методологиями гибкой разработки заключается в том, что функции разрабатываются отдельно и на коротких этапах.

DSDM

Метод динамической разработки программного обеспечения (DSDM) основан на быстрой разработке приложений (RAD) и соответствует Agile Framework. DSDM фокусируется на частой поставке продукта, активно вовлекая пользователей и давая возможность командам быстро принимать решения.

Бережливая разработка программного обеспечения

В Lean Software Development основное внимание уделяется устранению потерь и повышению ценности для клиента. Это приводит к быстрому развитию и продукту ценности.

Отходы включают частично выполненную работу, нерелевантную работу, функции, которые не используются заказчиком, дефекты и т. Д., Которые увеличивают задержки при доставке.

Бережливые принципы

  • Ликвидировать отходы
  • Усиление обучения
  • Задержка обязательств
  • Расширение возможностей команды
  • Доставить быстро
  • Создать целостность в
  • Увидеть весь

Kanban

Kanban сосредотачивается на управлении работой с акцентом на своевременную доставку (JIT), не перегружая членов команды. Задачи отображаются для просмотра всеми участниками, а члены команды — для извлечения работы из очереди.

Канбан основан на —

  • Канбан Правление (Визуальный и Постоянный через Развитие)
  • Предел незавершенного производства (WIP)
  • Время выполнения заказа

Методики гибкого тестирования

Методы тестирования четко определены для каждого проекта, будь то Agile или нет, для предоставления качественных продуктов. Традиционные принципы тестирования довольно часто используются в Agile Testing. Одним из них является Раннее тестирование, которое фокусируется на —

  • Написание тестовых случаев для выражения поведения системы.

  • Ранняя профилактика, обнаружение и устранение дефектов.

  • Обеспечение того, чтобы правильные типы тестов выполнялись в нужное время и как часть правильного уровня тестирования.

Написание тестовых случаев для выражения поведения системы.

Ранняя профилактика, обнаружение и устранение дефектов.

Обеспечение того, чтобы правильные типы тестов выполнялись в нужное время и как часть правильного уровня тестирования.

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

В этом уроке мы сосредоточимся на Scrum как на методологии Agile-тестирования.

Другие обычно используемые методики тестирования Agile —

  • Разработка через тестирование (TDD) — Разработка через тестирование (TDD) основана на кодировании, основанном на тестах.

  • Разработка на основе приемочных испытаний (ATDD)Разработка на основе приемочных испытаний (ATDD) основана на коммуникации между заказчиками, разработчиками и тестировщиками и основана на заранее определенных критериях приемки и приемочных тестах.

  • Разработка на основе поведения (BDD). В разработке на основе поведения (BDD) тестирование основывается на ожидаемом поведении разрабатываемого программного обеспечения.

Разработка через тестирование (TDD) — Разработка через тестирование (TDD) основана на кодировании, основанном на тестах.

Разработка на основе приемочных испытаний (ATDD)Разработка на основе приемочных испытаний (ATDD) основана на коммуникации между заказчиками, разработчиками и тестировщиками и основана на заранее определенных критериях приемки и приемочных тестах.

Разработка на основе поведения (BDD). В разработке на основе поведения (BDD) тестирование основывается на ожидаемом поведении разрабатываемого программного обеспечения.

Agile Testing Lifecycle

В Scrum тестирование включает в себя:

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

  • Планирование выпуска, основанное на усилиях по тестированию и дефектах

  • Планирование спринта на основе пользовательских историй и дефектов

  • Выполнение спринта с непрерывным тестированием

  • Регрессионное тестирование после завершения спринта

  • Отчет о результатах теста

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

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

Планирование выпуска, основанное на усилиях по тестированию и дефектах

Планирование спринта на основе пользовательских историй и дефектов

Выполнение спринта с непрерывным тестированием

Регрессионное тестирование после завершения спринта

Отчет о результатах теста

Автоматизация тестирования

Тестирование является итеративным и основано на спринтах, как показано на диаграмме, приведенной ниже —