В чем разница между ручным и автоматизированным тестированием?

Определения

Что такое ручное тестирование?

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

Что такое автоматизированное тестирование?

В автоматизированном тестировании тестировщики пишут код, который выполняет тесты. Для разработки тест-кейсов и их выполнения могут использоваться специальные инструменты. Цель — сократить время тестирования.

Запускается заранее написанный скрип с тест-кейсами, который выполняет тесты и сверяет актуальные данные с ожидаемыми.

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


Ключевые отличия:

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

Сводная таблица отличий ручного и автоматизированного тестирования

ПризнакАвтоматизированное тестированиеРучное тестирование
ОпределениеАвтоматизированное тестирование использует специализированные инструменты для создания и выполнения тестов.В ручном тестировании тест кейсы выполняются вручную тестировщиком.
ВремяВыполнение автотестов занимает гораздо меньше времени, чем ручное тестирование.Ручное тестирование трудозатратно и требует человеческого ресурса.
Исследовательское тестированиеАвтоматизированное тестирование не позволяет выполнять импровизированные интуитивные тесты.Исследовательское тестирование возможно.
Инвестиции в создание тест-кейсовНачальные инвестиции ресурсов в автоматизированном тестировании выше. Хотя ROI может быть выше на длинной дистанции.Начальные инвестиции ресурсов сравнительно ниже. ROI в сравнении с автоматизированным тестирование ниже на длинной дистанции.
НадежностьНадежно, не зависит от человеческого фактора.Зависит от человеческого фактора, поэтому менее надежно, чем автоматизированное тестирование.
Влияние UI измененийДаже для небольших изменение функциональности необходимо тратить время на изменение скрипта для корректной работы.Изменения не влекут за собой временных затрат.
Денежные вложенияПокупка инструментов, оплата труда автоматизированных тестировщиков (как правило выше, чем у мануальщиков, иногда в разы)Оплата труда ручных тестировщиков.
Эффективность вложенийНеэффективно для небольших приложений.Неэффективно для больших приложений.
Доступность отчетовЛюбой может зайти в тест менеджмент систему и ознакомиться с результатами.Из-за человеческого фактора, отчеты, созданные ручными тестировщиками, могут быть не всегда доступны/доступны с задержкой.
Тестирование производительностиТестирование производительности (как и нагрузочное тестирование, stress-тестирование, spike-тестирование) выполняется с помощью специальных инструментов.Редко выполняется вручную.
Параллельное выполнение тестовАвтоматизированное тестирование может производиться параллельно в разных окружениях (операционных системах, браузерах).Может проводиться параллельно, но требует для этого больше человеческих ресурсов.
Знание программированияНеобходимо знание программирования для автоматизированного тестировщика.Не требуется.
Установка и настройкаБолее сложные (по сравнению с ручным) установка и настройка окружения для выполнения тестов.Относительно простые.
ВовлечениеВыполняется автоматически.Влияет человеческий фактор — постоянное выполнение одного и того же набора тестов может стать скучным.
Идеальная сфера примененияПолезно, когда один и тот же набор тест-кейсов нужно выполнять постоянно и много раз.Полезно для нечасто повторяющихся тест-кейсов.
Влияние на дедлайнНулевой риск.Риск выше, чем при автоматизированном тестировании.
ФреймворкиИспользуются Data Driven, Keyword Driven и Hybrid фреймворки для автоматизации.Не использует фреймворки, но могут использоваться гайдлайны, чеклисты, черновики для написания тейст-кейсов.
ДокументацияАвтоматизированные тесты сами по себе могут служить документацией. Новый автоматизированный тестировщик может посмотреть код юнит-тестов и разобраться, что он делает и для чего используется.Необходимо писать документацию по тестированию.
Когда использоватьРегрессионное тестирование, Тестирование производительности, Нагрузочное тестирование и в часто повторяемых тест-кейсах.Исследовательское тестирование, тестирование юзабилити, Adhoc тестирование.
В случаях, когда часто изменяются требования к функциональности.

Плюсы и минусы ручного тестирования

Плюсы:

  • Быстрая и точная обратная связь, если нужно протестировать конкретный сценарий.
  • Менее дорогое на начальных этапах, чем автоматизированное тестирование.
  • Человеческий вгляд и интуиция (помогают в обнаружении неочевидных багов)

Минусы:

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

Плюсы и минусы автоматизированного тестирования

Плюсы

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

Минусы

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

Какой была ваша первая зарплата в QA и как вы искали первую работу?

Мега обсуждение в нашем телеграм-канале о поиске первой работы. Обмен опытом и мнения.

Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Мы в Telegram

Наш официальный канал
Полезные материалы и тесты
Готовимся к собеседованию
Project- и Product-менеджмент

? Популярное

? Telegram-обсуждения

Наши подписчики обсуждают, как искали первую работу в QA. Некоторые ищут ее прямо сейчас.
Наши подписчики рассказывают о том, как не бояться задавать тупые вопросы и чувствовать себя уверенно в новой команде.
Обсуждаем, куда лучше податься - в менеджмент или по технической ветке?
Говорим о конфликтных ситуациях в команде и о том, как их избежать
$1100*
медианная зарплата в QA в июне 2023

*по результатам опроса QA-инженеров в нашем телеграм-канале

Собеседование

19%*
IT-специалистов переехало или приняло решение о переезде из России по состоянию на конец марта 2022

*по результатам опроса в нашем телеграм-канале

live

Обсуждают сейчас