Разделы портала

Онлайн-тренинги

.
Как выбрать тесты для автоматизации
06.02.2017 16:41

Автор: Амир Гахрай (Amir Ghahrai)

Оригинал статьи: http://www.testingexcellence.com/choose-tests-automate/

Перевод: Ольга Алифанова

Как вы решаете, какие тесты автоматизировать, а какие оставить для ручного тестирования?

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

Ниже перечислены факторы, которые стоит принять во внимание, решая, какие ручные тесты должны или не должны быть автоматизированы. Как говорится, только то, что вы можете что-то автоматизировать, не означает, что вы должны автоматизировать все и вся.

Вот некоторые идеи, помогающие выбрать хороших кандидатов на автоматизацию:

Тесты, которые должны быть автоматизированы:

  • Бизнес-критические пути: фичи или пользовательские сценарии, при падении которых будет нанесен существенный урон бизнесу.
  • Тесты, которые должны прогоняться на каждом билде/релизе приложения – например, smoke, sanity, регресс.
  • Тесты, которые нужно прогонять на разных конфигурациях – разных операционных системах и браузерах.
  • Тесты, которые используют один и тот же сценарий, но разные данные для каждого прогона (тесты, управляемые данными).
  • Тесты, которые завязаны на большие объемы данных (например, заполнение очень больших форм).
  • Тесты, которые могут быть использованы для тестирования производительности (стресс, нагрузочное тестирование).
  • Тесты, которые занимают много времени на выполнение и могут быть запущены во время перерывов или ночью.
  • Тесты, во время которых необходим захват изображения, чтобы доказать, что приложение ведет себя верно, или проверка того, что ряд веб-страниц одинаково выглядит в разных браузерах.

В общем и целом, чем чаще прогоняется тест, тем лучше его автоматизировать.

Помните также, что тесты – не единственные кандидаты на автоматизацию. Задачи, например, настройка, создание тестовых данных для ручного тестирования – тоже прекрасные идеи для автоматизации.

Тесты, которые не нужно автоматизировать:

  • Тесты, которые прогоняются только один раз. Единственное исключение – если этот тест запускается с большим объемом данных. Даже если вы запустите его всего один раз, может, имеет смысл автоматизировать его.
  • Тесты пользовательского опыта и удобства использования, требующие реакции пользователя на простоту использования приложения.
  • Тесты, которые нужно запустить очень срочно. Обычно новая, только что разработанная фича требует быстрой обратной связи, и ее тестируют вручную.
  • Тесты, которые требуют доменного знания и опыта – исследовательское тестирование.
  • Прерывающиеся тесты. Тесты с предсказуемыми результатами не особенно ценны. Чтобы получить наилучший выхлоп от автоматизации, тесты должны давать предсказуемые и надежные результаты, чтобы проходить pass/fail условия.
  • Тесты, требующие визуального подтверждения. Однако мы можем делать скриншоты страниц во время автотестов, а затем вручную проверять их.
  • Тесты, которые не могут быть на 100% автоматизированы, не должны быть автоматизированы вообще, если только их автоматизация не сэкономит значительное время.

Обсудить в форуме