Во времена зарождения электронной торговли корпоративные Web-узлы состояли главным образом из статических страниц, и тестирование выполнялось внутри интрасети предприятия. Но когда появились Web-приложения для обработки транзакций, компании столкнулись с тем, что при работе через Интернет возникают задержки, способные вызвать сбой. Однако воспроизвести эту ситуацию в лабораторных условиях не просто. И тестирование, которое раньше осуществляли в процессе разработки, теперь проводят в рабочих условиях.
При тщательном тестировании Web-приложения необходимо проверить каждый функциональный уровень, чтобы определить причины возможных сбоев и низкой эффективности работы тех или иных компонентов системы, поэтому пакеты, используемые для Web-тестирования, должны обеспечивать не только проверку кода, но и анализировать отклик Web-серверов, серверов приложений и баз данных (БД). Следовательно, в состав инструментов для Web-тестирования должны входить программы-агенты для мониторинга серверов приложений, транзакций БД и рабочего кода, причем мониторинг кода должен осуществляться в процессе его выполнения.
Большинство поставщиков все еще используют традиционные методики, такие как регрессионное тестирование, тестирование методом «черного» и «белого ящика» для верификации кода HTML, сценариев Java (JavaScript) и даже кода Java.
Еще один шаг, который должны сделать поставщики, — снабдить все инструменты тестирования Web-интерфейсом. Пакеты устанавливают на Web-сервер реселлера для совместного использования клиентами, что считается дополнительной услугой.
В будущем это приобретет большое значение ввиду той роли, которую займут Web-службы в разработке приложений.
Переход к среде, построенной на базе Web, позволит сэкономить деньги, так как потребуются лишь однократная установка ПО на сервер и минимальные усилия по конфигурированию сетей клиентов.
Размещая пакеты Web-тестирования, реселлеры вправе рассчитывать на дополнительный доход, так как клиенты могут заказывать проведение определенных тестов, оплачивая именно их.
Растущий спрос на Web-службы меняет способы тестирования Web-приложений. Во многих корпорациях наблюдается тенденция преобразования приложений в Web-службы путем интеграции унаследованного кода с программами, использующими протокол SOAP.
Из всех компаний, упомянутых в обзоре, фирма Parasoft была единственным поставщиком, который предложил пакет, обеспечивающий всестороннее тестирование Web-служб. Компонент WebKing — по сути, командный центр всего пакета Parasoft. Он выполняет статический и динамический анализ HTML- и JavaScript-файлов. Типичные тесты структуры Web-узла включают в себя поиск орфографических ошибок, нарушений стандартов кодирования, проверку оптимальности XML-структур, а также XML-кода. Пакет поставляется с интерактивной справкой, в которой поясняются любые отступления от стандартов, установленных W3C и ECMA.
SOAPtest — последний выпущенный фирмой Parasoft инструмент тестирования — может проверить Web-службы, работая как в качестве клиента, так и сервера.
SOAPtest способен также служить программным агентом в промежуточном слое, беря на себя функции и сервера, и клиента. ПО совместимо с версиями SOAP фирм Microsoft и IBM, что оказалось весьма кстати, так как большинство корпораций сегодня используют обе эти версии.
Компания Atesto, предлагающая интегрированный пакет тестирования, доступный через Web-портал, создала наиболее подходящую для этого архитектуру. Для тестирования внутри корпоративной сети поставщик предлагает корпоративную версию, оснащенную такими же функциями, что и версия для ASP.
В отличие от конкурентов Atesto предлагает модель глобального лицензирования, которая позволяет установить версию Performance Suite Enterprise Edition в любом из офисов корпорации. Сотрудники, находящиеся в различных офисах, могут работать с программой на основе одной и той же лицензии без переустановки ПО. Лицензионные ключи не привязаны к каким-либо конкретным серверам или пользователям.
Интерфейсы продукта просты, что помогает быстро его освоить. Кроме того, программа обеспечивает автоматическое создание сценариев и берет на себя большую часть кодирования, облегчая жизнь пользователя.
Пакет e-Test Suite фирмы Empirix имел самый лучший интерфейс генерирования сценариев. В процессе навигации по сайту компонент e-Tester выполняет просмотр элементов, форм, фреймов и фрагментов HTML-кода. Java-апплеты, сценарии JavaScript и VBScript, а также элементы управления ActiveX могут быть выявлены и записаны без какого-либо кодирования. Затем «мастер» создает соответствующие тесты также без участия пользователя.
В пакет входит конфигурируемая с помощью «мастера» программа-диспетчер, которая обеспечивает планирование и контроль выполнения сценариев, а кроме того, посылает уведомления об ошибках по электронной почте. Осуществляется также мониторинг приложений и БД, размещенных на сервере. Компонент ServerStats обеспечивает сбор статистики с серверов BroadVision, BEA Systems и Microsoft.
Фирма Segue нацелена на всестороннее тестирование приложений; все предлагаемые ею инструменты серии Silk способны выдавать отчеты через Web.
Главный инструмент Web-тестирования — SilkTest — находит все элементы оформления Web-страниц — кнопки, сетки для размещения текста и регистрирует их как уникальные объекты. Программа может «углубиться» в каждый такой элемент, проверив его свойства либо подвергнув тестированию.
Одни и те же сценарии тестирования можно выполнять на различных платформах или в многоязычных Web-приложениях.
Техническая справка
Atesto Performance Suite 3.0
Используя Web-платформу, этот пакет обеспечивает тестирование распределенных приложений с минимальными усилиями по установке.
Empirix e-Test Suite 6.0
Это масштабируемое решение по тестированию способно работать с потоковыми технологиями, приложениями PeopleSoft 8, а также с технологиями Microsoft ASP и ActiveX.
Parasoft WebKing 3.2, SOAPtest 1.0, Jtest 4.1
Инструменты Parasoft позволяют тестировать все — от Web-узлов до баз данных, анализируя код HTML, XML, Java и SQL.
Segue SilkTest 5.5, SilkPerformer V, SilkVision 1.2
Инструменты серии Silk обладают мощным языком создания сценариев Web-тестирования. Предлагается также функциональное тестирование приложений на базе EJB и CORBA.