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

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

.
На примере реального проекта: что стоит учесть при разработке стратегии по автоматизации тестирования?
24.08.2018 11:14

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

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

С самого начала нужно решить, для чего же стоит внедрять автоматизацию и в каком объеме.

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

  • Получение более быстрых результатов тестирования;
  • Эффективное распределение ресурсов, направленных на тестирование;
  • Оптимизация затрат на обеспечение качества продукта и тестирование;
  • Безошибочное тестирование: качественный тест не допустит ошибки, которую может допустить человек;
  • Возможность более тесной интеграции тестирования с существующими процессами разработки продукта.

НА КАКИЕ ФАКТОРЫ ОБРАТИТЬ ВНИМАНИЕ ПРИ ПРИНЯТИИ РЕШЕНИЯ О ВНЕДРЕНИИ АВТОМАТИЗАЦИИ?

Для определения объемов автоматизации необходимо учитывать три фактора.

1. Стратегия продукта

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

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

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

Или же вы создаете прототип приложения, и вам нужно как можно скорее получить отзывы целевой аудитории?

Тогда чем раньше продукт выйдет на рынок, тем скорее вы узнаете, что же о нем думают пользователи.

В двух случаях подход к автоматизации будет разным. Вряд ли вы захотите вкладывать значительные инвестиции в автоматизацию тестирования прототипа. А вот подготовка «флагманского» продукта действительно потребует вложений.

2. Стоимость внедрения

Для определения стоимости автоматизации важно знать все этапы проекта по внедрению автоматизации тестирования:

  • Этап 1: Определение объема автоматизации;
  • Этап 2: Выбор нужных средств;
  • Этап 3: Внедрение фреймворка;
  • Этап 4: Развертывание и настройка среды;
  • Этап 5: Разработка и отладка автотестов;
  • Этап 6: Выполнение тестов и анализ результатов;
  • Этап 7: Обновление автотестов;
  • Этап 8: Оценка эффективности автоматизации.

Будущее решение для автоматизации зависит от того, сколько времени вы можете уделить каждой стадии.

Вы также можете следовать рекомендации Брайана Марика, автора книги «Когда тесты нужно автоматизировать»? (‘When should a test be automated’?)

«Стоимость автоматизации теста лучше всего можно измерить количеством ручных тестов, которых вам просто не придется выполнять, и ошибок, с которыми вы никогда не столкнетесь».

3. Приоритезация функциональности продукта

Как правило, в первую очередь автоматизируется трудозатратное регрессионное тестирование. Дальше определяют, какая функциональность является основной. Ведь именно от ее качества будет зависеть работоспособность решения.

Предлагаем на конкретном примере рассмотреть процесс внедрения автоматизации.

Кейс проекта по автоматизации тестировании

В компанию A1QA обратился клиент – поставщик антивирусных решений, желающий внедрить автоматизацию для оптимизации процессов обеспечения качества.

Для реализации проекта была сформирована команда по автоматизации тестирования, которая должна была решить следующие задачи:

  • Сократить время развертывания и проведения smoke-тестирования;
  • Снизить количество человеко-часов ручного тестирования в неделю;
  • Обеспечить качество локализации портала клиента для корректной работы на 31 языке.

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

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

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

Данный портал должен был стать «флагманом» компании, поэтому было принято решение инвестировать в автоматизацию тестирования.

Объем работ

Основная задача заключалась в автоматизации трудоемкого регрессионного тестирования.

После ее выполнения было решено, что команда специалистов перейдет к автоматизации тестов, направленных на проверку наиболее значимой функциональности.

Автоматизация процесса мониторинга доступности сторонних услуг

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

Функциональность портала сильно зависела от производительности сторонних сервисов. Инженеры компании A1QA разработали автотесты для мониторинга их доступности.

В случае обнаружения каких-либо проблем система оповещала ​​об этом специалистов – разработчиков, менеджеров, тестировщиков, – которые участвовали в процессе их устранения.

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

Далее специалисты приступили к автоматизации тестирования локализации.

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

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

Благодаря автоматизации удалось успешно протестировать работу портала на всех выбранных языках, при этом процесс тестирования ускорился в пять раз.

Преимущества грамотно подобранного подхода

Благодаря грамотному подходу к внедрению автоматизации тестирования на проекте были достигнуты следующие результаты:

  • Процесс развертывания и время на проведение smoke-тестирования сократились в пять раз.
  • Тестовое покрытие включало 900 часов ручных проверок ежедневно и около 200 дополнительных часов в неделю.
  • Ежемесячное время простоя среды сократилось в 26 раз.
  • Автоматизация тестирования окупилась и начала приносить прибыль уже через шесть месяцев после внедрения.

Резюмируя

Автоматизация тестирования – отличное решение для тех, кто хочет быстро и качественно вывести продукт на рынок.

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

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

Грамотная стратегия принесет вам значительные преимущества, а главное – вы всегда будете на шаг опережать конкурентов.

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