Какие-либо предложения для хорошего автоматизированного веб-инструмента тестирования загрузки?

Что некоторая польза автоматизированные инструменты для загрузки, тестирующей (стресс-тестирование) веб-приложения, которые не используют запись и воспроизведение сетевых пакетов HTTP?

Я знаю, что существуют многочисленные инструменты тестирования загрузки на рынке, которые записывают и воспроизводят сетевые пакеты HTTP. Но они являются неподходящими для моей цели из-за этого:

  • Формат пакета HTTP изменяется очень часто в нашем приложении (например, когда мы оптимизируем вызов Ajax). Мы не хотим адаптировать все сценарии тестирования просто, потому что существует небольшое изменение в формате пакета HTTP.

  • Наша тестовая команда не должна будет знать, что любые внутренности о нашем приложении пишут свои сценарии тестирования. Инструмент, который воспроизводит пакеты HTTP, однако, требует, чтобы команда знала формат Запросов HTTP и ответов, таких, что они могут адаптировать детали воспроизводимых пакетов HTTP (например, имя пользователя).

Автоматизированный инструмент тестирования загрузки, который я ищу, должен смочь позволить тестовой команде записать сценарии тестирования "черного квадрата", такие как:

  • Вызовите веб-страницу в URL http://....
  • Во-первых, войдите XXX в текстовое поле XXX.
  • Затем нажмите кнопку XXX.
  • Ожидайте, пока ответ не был получен от веб-сервера.
  • Проверьте, что текстовое поле XXX теперь содержит текст XXX.

Инструмент должен смочь моделировать до нескольких 1 000 пользователей, и это должно быть совместимо с веб-приложениями с помощью ASP.NET и Ajax.

6
задан Aliaksandr Belik 9 February 2012 в 17:36
поделиться

5 ответов

TestMaker от PushToTest.com может запускать записанные сценарии, такие как Selenium, а также многие другие языки, такие как HTML, Java, Ruby, Groovy, .Net, VB, PHP и т. Д. инфраструктуры отчетности, и вы можете создать нагрузку в своей лаборатории тестирования или использовать облачные среды тестирования, такие как EC2, для виртуальных лабораторий тестирования.

Ежемесячно они проводят бесплатные вебинары по использованию инструментов тестирования с открытым исходным кодом, один из которых состоится в следующий вторник.

http://www.pushtotest.com

0
ответ дан 17 December 2019 в 18:10
поделиться

JMeter я нашел довольно полезным, он также имеет функцию записи для записи случаев использования, поэтому вам не нужно указывать каждый GET/POST вручную, а скорее «щелкнуть» вариант использования один раз, а затем позволить JMeter повторить его.
http://jmeter.apache.org/

2
ответ дан 17 December 2019 в 18:10
поделиться

Лицензия на него может быть дорогой (если у вас нет MSDN), но Visual Studio 2010 Ultimate edition имеет отличный набор инструментов для нагрузочного и стресс-тестирования, которые делают то, что вы описали. Вы можете попробовать его бесплатно в течение 90 дней здесь.

1
ответ дан 17 December 2019 в 18:10
поделиться

А как насчет http://watin.sourceforge.net/?

0
ответ дан 17 December 2019 в 18:10
поделиться

Есть несколько подходов; Однако я бывал в ситуациях, когда мне приходилось запускать собственные утилиты, генерирующие нагрузку.

Что касается вашего тестового сценария, он включает:

  • отправку запроса GET на страницу ввода формы http: // (только проверка, если дан ответ 200)
  • отправка Запрос POST на http: // страницу отправки формы с предварительно сгенерированными парами ключ / значение для текста XXX и выполнение проверки регулярного выражения для ответа

Если ваша веб-страница не является сложной AJAX, нет необходимости «имитировать нажатие кнопки» - об этом позаботится запрос POST.

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

Ранее я использовал httperf для нагрузочного тестирования большого веб-сайта: он может моделировать сеанс, состоящий из нескольких запросов, и может моделировать одновременно большое количество пользователей (то есть сеансов). Например, если ваш веб-сайт сгенерировал файл cookie сеанса с домашней страницы, вы могли бы сделать это первым запросом, httperf затем будет использовать этот файл cookie для последующих запросов, пока не завершит выполнение списка предоставленных запросов.

0
ответ дан 17 December 2019 в 18:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: