Тестирование функциональности веб-приложений

2009/5/16 2:35  сайт скрипт test web

zoom К автоматизированному тестированию функциональности веб-сайтов прибегают довольно редко - как правило из-за сложности самих систем тестирования или неумения ими пользоваться. При этом часто забывают, что веб-сайт - это такая же программа, предназначенная для взаимодействия с пользователем, и перед началом эксплуатации неплохо бы провети тесты: насколько удобно пользователям с ней работать, как она поведёт себя под нагрузкой?

Существуют 2 основных вида тестирования:

  • Функциональные испытания: с помощью записи-воспроизведения действий пользователя или скриптов, это инструменты для просмотра вашего сайта, заполнения форм, перехода по ссылкам
  • Стресс тестирование: даже если веб-приложение работает нормально с 1 или 10 пользователей, оно может показать совершенно разные результаты (например, узкие места в использовании ресурсов) при 100 или 1000 активных пользователей.

Функциональные испытания

SeleniumHQ - несколько средств тестирования проекта, которые можно применять по отдельности или в комбинациях друг с другом:

  • Selenium IDE: плагин к Firefox-у, позволяет записывать последовательность действий и выполнять их в автоматическом режиме
  • Selenium Remote Control: клиент-серверная система управления веб-браузером, локально или удалённо, использует практически любой язык программирования и тестирования.
  • Selenium Grid: работает как и Selenium Remote Control, но выполняет тесты одновременно на нескольких серверах
  • Selenium Core: система тестирования, основанная на Java-script
Также предлагаются Selenium системы тестирования специально для Rails, Ruby & Eclipse

Watir - набор библиотек на Ruby, он нажимает ссылки, заполняет формы, нажимает кнопки и проверяет полученные результаты.

ActiWATE - Java-платформа для автоматизации тестирования функциональности сайта. Эмулирует действия браузера, поддерживает http-https и Ajax запросы.

WebDriver - проект разработчиков Google, быстрый и простой в управлении. Здесь информация от разработчиков.

HtmlUNIT - одно их самых популярных решений для функциональных тестов, имеет хорошую поддержку JavaScript (которые постоянно совершенствуются) и может работать с jQuery, MooTools, Prototype, Dojo, другими фреймворками.

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

OttoMate - набор из 6 приложений для Mac OS

ieunit - Java-script фреймворк для тестирования логики поведения веб-сценариев

FWPTT - еще один веб-сервис для тестирования функциональсти сайтов

Стресс-тестирование веб-сайтов

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

Tsung - может быть использован для стресс-тестов таких сервисов, как HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP, Jabber/XMPP servers.

Apache JMeter - известное средство тестирования, моделирует нагрузку как по http-протоколу, так и для баз данных и POP3-серверов

Siege - проект с говорящим названием "Осада"! Поддерживает basic authentication, cookies, HTTP и HTTPS protocols.

The Grinder - Java проект, позволяющий проводить распределённый тест нагрузки с нескольких компьютеров

Продукты тестирования от Microsoft - IIS 6 Web Capacity Analysis Tool (The IIS 6.0 Resource Kit Tools include WCAT), IIS 7.0 Web Capacity Analysis tool, Web Application Stress Tool

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

Нет комментариев