Создание решения по автоматизации тестирования
ЗАКАЗЧИК
Заказчик – оператор мобильной связи из Эстонии, предлагающий клиентам широкий пакет услуг с возможностью их последующей активации через Интернет.
Компания: оператор мобильной связи
Страна: Эстония
Сфера деятельности: обслуживание мобильной связи посредством сети Интернет
Оказанные услуги: автоматизация тестирования
Модель взаимодействия: оказание услуг по обеспечению качества сторонней компании-разработчику ПО
Продолжительность: 4 месяца
Трудозатраты: 8 человеко-месяцев
ПРОЕКТ
Проект заключается в разработке наиболее удобной среды самообслуживания в сети Интернет, посредством которой частные и корпоративные клиенты могут оперативно получить компетентную помощь, покупать пакеты мобильной связи, производить оплату и подключать услуги через Интернет-банки, а также заказывать настройки мобильного телефона.
ЗАДАЧА
Перед командой автоматизации компании A1QA была поставлена задача создания решения, которое бы позволило автоматизировать процесс тестирования продукта. Решение характеризовалось следующими свойствами:
-
возможность получения актуальной информации о тестируемом продукте в течение короткого промежутка времени;
-
возможность автоматического запуска по расписанию и согласно запросу заинтересованных лиц;
-
удобный и понятный интерфейс для запуска на локальной машине, быстрая настройка окружения.
Одним из требований проекта являлось использование открытых и бесплатных инструментов автоматизации.
РЕШЕНИЕ
Тестируемое приложение разрабатывается на языке Java, поэтому тестирование также было решено автоматизировать, используя этот язык программирования.
В качестве инструмента автоматизации был выбран Selenium RC, который позволяет создавать тест-кейсы TestNG. Готовые тестовые сценарии легко интегрировались с процессом выпуска сборок приложения при помощи CruiseControl.
Технологические особенности решения:
-
Тестовые скрипты поддерживали интерфейс на трех языках: английском, эстонском и русском. Данные локализации извлекались скриптами непосредственно из базы данных приложения.
-
Основные тестовые данные для выполнения тестирования (например, имена пользователей) извлекались автоматически из базы данных.
-
Кроссбраузерность: одни и те же тестовые скрипты могли работать в 3 браузерах: Mozilla Firefox 2.0, Internet Explorer 6.0 и 7.0.
-
Среда для автоматизации включала различные, уже готовые, подходы и решения: TestNG, Selenium, CruiseControl, что позволило сэкономить на разработке механизмов запуска, входа в систему, формирования результатов.
СОТРУДНИЧЕСТВО С УДАЛЕННОЙ КОМАНДОЙ РАЗРАБОТЧИКОВ
Взаимодействие с заказчиком осуществлялось по следующим направлениям:
-
В качестве системы контроля версий использовался CVS на стороне разработчиков. Это давало возможность заказчику следить за прогрессом и всегда получать последнюю версию тестовых скриптов.
-
Для учета дефектов приложения и самих скриптов использовалась система Bugzilla на стороне заказчика. Процесс разработки скриптов автоматизации с лёгкостью влился в процесс разработки.
-
Был построен процесс описания и приёмки тестовых сценариев. Специалисты A1QA работали с общими требованиями по автоматизации, предоставленными заказчиком. Разработка состояла из 2-х этапов:
После каждого этапа заказчик контролировал результат работы и вносил необходимые изменения. Заказчик получал всю необходимую информацию о ходе работ, при этом данный процесс требовал минимальных затрат времени и ресурсов.
ИСПОЛЬЗОВАННЫЕ ТЕХНОЛОГИИ
Инструменты автоматизации: Selenium RC, TestNG
Язык программирования: Java
Поддерживаемые браузеры: IE 6.0/7.0, FF 2.0
Система учета дефектов: Bugzilla на стороне заказчика
Системы учета тестовых сценариев: Rational Clear Quest на стороне A1QA
Система контроля версий: CVS на стороне заказчика
Среда разработки: Eclipse
Базы данных: Oracle 9
Прочие инструменты: Toad, Ant, CruiseControl
РЕЗУЛЬТАТЫ
Заказчик получил набор автоматических тестов, которые сейчас используются 20-30 раз в месяц и делают работу, эквивалентную работе 0.5 тестировщика.
Тесты выполняются в течение получаса, что даёт возможность получать данные о работоспособности системы в сжатые сроки и принять решение о возможности продолжения тестов продукта вручную.
Заказчик доволен результатом, и сейчас ведётся работа над автоматизацией тестирования других компонент тестируемой системы.
Скачать файл
Связаться с нами