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

в 14:34, , рубрики: agile, test automation, Блог компании Отус, Тестирование IT-систем

Всем привет!

Приближаемся к запуску нового нашего курса: «Автоматизатор в тестировании». Сегодня вот последний открытый урок, потом день открытых дверей и в бой :)
На прошлых двух таких мероприятиях не раз задавался вопрос о связи Agile и автоматизации. Вот, нашёлся в закромах неплохой и не сильно большой материал, которым с вами и делимся.

Поехали.

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

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

Традиционное тестирование (каскадная модель) vs. Agile Тестирование

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

Традиционное тестирование
Автоматизация тестирования и Agile - 3

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

Agile Тестирование

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

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

Best Practices в Agile Тестировании

  1. Автоматизация юнит-тестирования.
  2. Разработка через тестирование.
  3. Автоматизация регрессионного тестирования.
  4. Исследовательское тестирование.

Как Agile связан с Тестированием

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

  • Тестирование продвигает проект.
  • Тестирование НЕ фаза.
  • Все занимаются тестированием.
  • Сократите задержку обратной связи — начинайте тестировать как можно раньше и чаще.
  • Тестирование отражает ожидания.
  • Поддерживайте чистоту кода и фиксите баги быстро.
  • Избавьтесь от излишков документации.
  • Тестирование — часть “Критерия готовности” (“DoD”, Definition of Done).
  • От “Тестирования после Разработки” к “Разработке через Тестирование”.

Становление Agile Тестировщика-Автоматизатора

  • Обеспечивайте непрерывную обратную связь.
  • Доносите ценность до клиента.
  • Предоставляйте связь “лицом к лицу”.
  • Не усложняйте.
  • Внедряйте усовершенствования.
  • Реагируйте на изменения.
  • Занимайтесь самоорганизацией.
  • Сфокусируйтесь на людях.

Что не так с Ручным Тестированием?
Автоматизация тестирования и Agile - 6

  • Ручное тестирование всех областей и негативными сценариями — требует много времени и средств.
  • Сайты с несколькими локализациями сложно тестировать вручную.
  • Мануальное тестирование может наскучить, а значит послужить источником ошибок.
  • Автоматизация улучшает качество и поднимает боевой дух команды.
  • Автоматизация не требует вмешательства человека. Их запуск не требует наблюдения (например, на ночь).
  • Автоматизация ускоряет выполнение тестирования.
  • Автоматизация увеличивает охват тестирования.

Какие тест-кейсы стоит автоматизировать?
Автоматизация тестирования и Agile - 7

  • Тест-кейсы для автоматизации могут быть выбраны по критерию Окупаемости Инвестиций (ROI, Return of Investment)
  • Тест-кейсы с высоким риском — критические для бизнеса тест-кейсы
  • Повторяющиеся тест-кейсы
  • Тест-кейсы, которые слишком сложно и неудобно выполнять вручную
  • Тест-кейсы, требующие много времени.

Какие тест-кейсы не стоит автоматизировать?
Автоматизация тестирования и Agile - 8

  • Тест-кейсы, которые были разработаны недавно и еще не были проверены вручную.
  • Тест-кейсы, требования для которых постоянно меняются.
  • Тест-кейсы на ad-hoc основе.

Преимущества автоматизированного тестирования

  • Экономия времени.
  • Скорость.
  • Стабильность.
  • Поддержка тест-сьюта.
  • Многоразовость.
  • Увеличенный охват.
  • Снижение стоимости.

Карьера в автоматизации тестирования
Автоматизация тестирования и Agile - 9

Сложности:

  • Автоматизация становится критически значимой частью бизнеса в связи с постоянными изменениями в разработке ПО.
  • Для автоматизации тестирования требуется опыт в разработке ПО, а также знания основ тестирования.

Достоинства:

  • Быстрый карьерный рост.
  • Разработка ПО для тестирования ПО.
  • Сбалансированная карьера: получаете знания и в тестировании, и в разработке.

Удачи и успехов в тестировании :)

THE END

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

Автор: MaxRokatansky

Источник

Поделиться

* - обязательные к заполнению поля