Язык

Новости компании

Проблемы аутсорсинг тестирования. Наш опыт

February 18, 2014

admin-ajax

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

Наша задача на проекте была достаточно простой — написать для веб-интерфейса автоматические скрипты на Selenium Webdriver, которые бы покрывали весь основной функционал, и загрузить их на TeamCity.

Но… возникли следующие проблемы:

1. Непонимание.

Заказчик не понимал, как и зачем покрывать функционал автоматизированными тестами. Увидев «сырой», на половину готовый функционал, мы сразу сообщили заказчику, что пишут на первых страницах любого учебника по автоматизации: «Автоматизировать незаконченный продукт нет смысла. Это приведёт к ненужным затратам времени и сил, а следовательно, и денег. Лучше закончить продукт, а потом приступить к автоматизации». Наши слова были проигнорированы и заказчик настоял на начале работы. Как результат — недовольный клиент и большие затраты времени на поддержку и редактирование скриптов после изменений функционала.

2. Отсутствие документации.

Документов, описывающих работу функционала и бизнес-логику приложения, попросту не было. Нам объяснили это так: «Проектом занимается небольшое количество людей и все прекрасно знают, как работает тот или иной функционал». Документацию пришлось писать нам самим со слов разработчиков, которые, как выяснилось, сами не всегда до конца понимали бизнес-логику приложения, что привело к ещё большим затратам времени, как нашего, так и разработчиков. Результат — недовольный клиент.

3. Неопределенность.

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

4. Плохая коммуникация.

Дефицит общения был между нами и заказчиком, как, в общем-то, и между заказчиком и разработчиком. В итоге процесс разработки происходил следующим образом: разработчики вносят изменения, не сообщая о своих действиях тестировщикам. У тестировщиков, то есть у нас, падают почти все авто-тесты и нам приходится тестировать функционал вручную, вносить изменения в тест-кейсы и редактировать (иногда полностью переписывать) скрипты. Периодически изменения вносились со стороны заказчика и даже разработчикам не сообщалось об этом. У нас опять переставала работать часть скриптов. Мы задавали вопросы разработчикам касательно изменений, но они лишь пожимали плечами…

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

  • Вдумчиво подходите к выбору проекта. На практике проекты часто оказываются куда сложнее, чем их описывают заказчики.
  • Требуйте документацию. Полезной будет любая информация по проекту, которую может дать заказчик или разработчики. Желательно в письменном виде.
  • Задавайте вопросы. Не стесняйтесь звонить разработчикам, менеджерам и просить объяснить или просто уточнить моменты, в которых вы не уверены.
  • Храните переписку. А также все разговоры и прочую информацию, которую вам дают менеджеры и разработчики. В случае возникновения конфликтов у вас будут аргументы, почему вы поступили так, а не иначе.