Автоматизированное тестирование: ожидание vs реальность |
12.07.2017 09:17 |
Оригинал публикации: http://bytextest.ru/2017/06/20/autotest-vs-reality/#more-5727 Большинство занимающихся тестированием хоть раз испытывали желание нажать «волшебную» кнопку и смотреть, как программа все делает сама. Все любят автоматизацию. Это быстро, надежно, позволяет оптимально использовать ресурсы за счет работы ночью и не требует вмешательства человека. Казалось бы, наконец найдено решение проблемы эффективности. Ожидание №1: Можно тратить время на изучение фреймворка и тест-кейсов при автоматизации нового приложения. Реальность: Автоматизация занимает много времени, денег и, самое главное, терпения. Написание скрипта автоматизации требует от тестировщика знания сферы деятельности, автоматизации тест-кейсов и возможности выбрать соответствующий фреймворк. Автоматизация, как и разработка приложений, нуждается в тестировании. Скрипты, написанные с помощью автоматизации, необходимо тщательно проверить, используя все тестовые данные и негативное тестирование. Инструмент, не прошедший такое тестирование, приводит к ошибкам в скрипте во время работы. Решение проблемы:
Ожидание №2: Автоматизированное тестирование может заменить ручное тестирование. Реальность: Существует заблуждение, что как только нужные скрипты написаны, можно сразу заменить тестировщика программой. Это не совсем так. Автотест пропустит даже самый маленький баг, если поиск багов такого типа не прописан в нем, что вряд ли произойдет при ручном тестировании. Кроме того, в большинстве случаев в приложения часто вносят изменения, что влияет на “область покрытия программы” и приводит к ошибкам в скрипте. Здесь и приходит на помощь тестировщик, который вручную проверяет изменения, пока скрипты обновляются. Решение проблемы:
Ожидание №3: Используя автоматизацию, можно добиться результата гораздо быстрее, чем при выполнении ручного тестирования.
Реальность: В сравнении с ручным автоматизированное тестирование действительно проходит быстрее, но в некоторых случаях программе требуется гораздо больше времени, чтобы обнаружить объект, свойства которого не прямолинейны. Например, автоматизация потратит больше времени, чтобы обнаружить несколько заголовков с похожими свойствами на одной странице, нежели тестировщик, который взглядом проверит их наличие. Решение проблемы:
Ожидание №4: Конечному пользователю автоматизированного тестирования нужно нажать всего одну кнопку, чтобы провести тест-кейсы. Реальность: Когда автоматизация завершена, и приложение передано конечному пользователю (чаще всего это тестировщики или разработчики, проводящие модульное тестирование), многие думают, что выполнение скриптов может проходить без каких-либо изменений в тестовых данных. К сожалению, такое происходит очень редко. Факт того, что придется потратить время на подготовку тест-кейсов для выполнения скрипта, становится сильным шоком для пользователя. Происходит это из-за того, что выполнение скриптов рассматривается как второстепенная задача, а не основная. Конечный пользователь должен разбираться в потоковых данных, ключевых словах и знать, какие значения следует вводить. Решение проблемы:
Ожидание №5: Автоматизированное тестирование выполнит работу на 100% без единого сбоя. Реальность: Автоматизация схожа с разработкой ПО и имеет свои недостатки и ограничения. Невозможно выполнить все скрипты без сбоев в них. Есть несколько причин, по которым эти сбои происходят, и не все они связаны с автоматизацией. Например, медленная работа системы, проблема целостности данных, изменения в пользовательском интерфейсе и т.д. Чаще всего это происходит с постоянно обновляющимися приложениями. Решение проблемы:
Кирилл Флягин, геймдизайнер, QA Lead, компания Bytex: |