Полезность и актуальность любого исследования в работоспособности разработанных
в его результате решений. Приведём пример решённой практической задачи,
которая на определённом этапе взросления структуры тестирования и обеспечения
качества в компании встала перед автором этой статьи. При постановке задачи
на выбор инструмента, были применены все группы критериев, в результате
чего ,были выделены наиболее важные группы критериев. В двух словах нужно
было предложить средство, которое обеспечивало бы потребности по функционалу,
которые были сформулированы на этапе разработки планов тестирования, и
было приемлемым решением по критерию цена/качество.
В существующем процессе разработки уже были привлечены инструменты обеспечивающие
следующие задачи разработки:
Контроль версионности
Регистрации и обработки ошибок
Управления требованиями
Основные функциональные требования к системе автоматизации тестирования:
Проводить функциональное тестирование приложений с графическим пользовательским
интерфейсом.
Создавать скрипты имитирующие действия пользователей, согласно набору
сценариев использования системы.
Иметь возможность имитации работы под параллельной нагрузкой нескольких
десятков пользователей.
Поддерживать приложения выполненные в технологии Microsoft .NET на
уровне работы с объектной моделью.
Поддерживать функциональность генерации отчётной документации.
Нефункциональные требования к системе:
Приемлемость стоимости набора инструментов системы к общей запланированной
сумме на инструментарий разработки по проекту в целом.
Возможность быстрого освоение инструмента за счёт использования в
качестве языка скриптов одного из языков: VBS или Delphi.
Наличие у компании производителя построенной структуры работы с пользователями:
наличие групп пользователей (в идеале русскоязычных), листов рассылки
или форумов.
Обзор рынка производителей дал довольно обширный список производителей
и инструментов. Во многом определиться с кругом компаний помогли критерии
задачи, которые касались технологии разработки. Многие из сравнительно
недорогих инструментов, от молодых компаний, в данных версиях «не умели»
работать с объектной моделью приложений выполненных в технологии Microsoft
.NET. Среди производителей достаточно мощных линеек инструментов выделились
следующие компании:
Rational
CompuWare
Mercury Interactive
Segue
AutomatedQA
Проведя анализ представленной на рынке продукции по ценовому критерию,
из обзора были практически полностью исключены инструменты компании Rational
и CompuWare. Продукты компании Mercury Interactive представляли интерес
с той точки зрения, что достаточно высокая цена компенсировалась наличием
в России учебно-сертификационных центров компании. Программа подготовки
специалистов, кроме достаточно широко охвата материала, была выделена
по критерию удобства: существует возможность проведения тренингов и семинаров
на территории заказчика с выездом необходимых специалистов центра. Практически
все компании имели достаточно мощную сеть ресурсов по работе с пользователями,
однако особо была отмечена структура конференций компании AutomatedQA.
Оценка инструментов функционального тестирования по степени зрелости
компаний и по программам технической поддержки не смогли выявить явных
лидеров. Проведя анализ полученных демонстрационных версий в работе с
пилотным проектом, выполненным специально для этих целей, были получены
оценки по критериям удобства использования инструментов и также предварительные
оценки простоты изучения методологий тестирования заложенных в возможности
инструментов.
Анализ технических возможностей, особенно поддержка объектной модели
приложений в технологии Microsoft .NET позволили выделить в качестве бесспорных
лидеров два продукта: TestComplete от AutomatedQA.Corp и QuickTest от
Mercury Interactive. Оба продукта предлагают разработчикам тестовых скриптов
глубокую поддержку специфичных контролов Microsoft .NET. В результате
сравнения списков поддерживаемых элементов, продукт QuickTest опередил
своего конкурента по количеству типов поддерживаемых контролов. Однако
при более детальном анализе используемых в разрабатываемой системе элементов,
выяснилось, что в TestComplete присутствует полноценная поддержка всех
необходимых типов элементов управления. Сравнив условия лицензирования
(все подобные средства очень растут в цене с увеличением количества рабочих
мест) и условия предоставления следующих версий, TestComplete вышел победителем
в гонке.
Таким образом, инструмент от компании AutomatedQA, TestComplete был выбран
из списка инструментов функционального тестирования и рекомендован руководству
проекта как оптимально подходящий. Рассмотрев материалы исследования,
компанией было принято решение и приобретении данного инструмента.