Использование LoadRunner для тестирования серверных процессов

StackOverflow https://stackoverflow.com/questions/378411

Вопрос

В настоящее время мы используем LoadRunner для тестирования производительности наших веб-приложений, но у нас также есть некоторые серверные процессы, которые нам необходимо протестировать.

Предыстория:

Мы называем эти процессы нашими "двигателями".Один механизм получает сообщения путем опроса очереди IBM WebSpere MQ на наличие сообщений.Он извлекает сообщение из очереди, обрабатывает его и помещает результат в исходящую очередь.В настоящее время мы тестируем этот движок с помощью скрипта TCL, который считывает файл, содержащий сообщения, помещает сообщения во входящую очередь, затем опрашивает исходящую очередь на предмет результатов.

Другой движок получает сообщения через веб-сервис.Веб-служба записывает сообщение в таблицу в нашей базе данных.Ядро опрашивает таблицу базы данных на наличие новых сообщений, принимает сообщение, обрабатывает его и помещает результат обратно в базу данных.В настоящее время мы тестируем этот движок с помощью скрипта VBScript, который считывает файл, содержащий сообщения, отправляет сообщение веб-службе, затем продолжает запрашивать у веб-службы единицу результата, пока она не будет готова.

Вопрос:

Мы хотели бы отказаться от сценариев TCL и VBScript и стандартизировать LoadRunner, чтобы у нас был один инструмент для управления всеми нашими тестами производительности.

  1. Я знаю, что LoadRunner поддерживает протокол веб-служб "из коробки", но я не уверен, как его использовать.Кто-нибудь знает какие-либо примеры того, как использовать LoadRunner для тестирования веб-сервиса?
  2. Есть ли у LoadRunner протокол для MQ?Можно ли использовать LoadRunner Vuser для управления загрузкой (помещения сообщений) в очередь MQ?Нужно ли нам для этого что-то покупать у HP или какого-либо другого поставщика?

Спасибо :)

Это было полезно?

Решение

В программном обеспечении incuded имеется надстройка для LoadRunner для взаимодействия с серией MQ и помещения сообщений непосредственно в очередь.Веб-сервисы также полностью поддерживаются, и VBScript тоже поддерживается, возможно, с использованием QTPro для скрипта и пользователя GUI в LoadRunner?Колин.

Другие советы

Для # 1, в качестве альтернативы сценарию веб-служб, вы могли бы попробовать записать сценарий Windows Sockets.Я использовал LoadRunner для записи скриптов winsock для тестирования некоторых API (Java).Что я сделал, так это написал действительно простой клиент Java API, а затем выполнил его из пакетного файла Windows.Затем на пакетный файл будет ссылаться как на исполняемый файл при записи LR-скрипта в VuGen.

Я не уверен, сможет ли VuGen загрузить файл VBScript для записи, но вы могли бы попробовать.В противном случае вы можете попробовать обернуть свой VBScript в пакетный файл, который может быть запущен VuGen.

Когда VuGen записывает скрипт winsock, он в основном отслеживает сетевое взаимодействие для процесса, с помощью которого вы записываете.После того, как вы закончите запись, он сгенерирует дамп сетевых данных на листе "data.ws", который вы можете просмотреть и отредактировать с помощью VuGen.Вы можете параметризовать этот лист данных для своих нагрузочных тестов.

Можно кодировать SOA-запросы и анализировать ответы в LoadRunner.Смотрите wilsonmar.com/1lrscript.htm.

Но имейте в виду, что TCL и VBScript, разработанные для функционального тестирования, имеют иную архитектуру и область применения, чем сценарии LoadRunner.QTP и WinRunner берут на себя управление приложением.

Скрипты LoadRunner фокусируются на обмене данными по проводам.В случае безголового SOA XML это архитектурное различие не имеет значения.

Однако вам может быть проще поддерживать VBScript из графического интерфейса пользователя, поскольку для создания SOA-скриптов в LoadRunner требуется более глубокое понимание форматов сообщений, чем у большинства разработчиков MQ.

У вас действительно есть три пути для отправки сообщений из очереди MQ с помощью LoadRunner

(1) MQTester.Это встроенная надстройка протокола MQ для использования с LoadRunner (2) Winsock.Разработку Winsock лучше всего описать как утомительно похожую на выковыривание мух из молотого перца.Утомительно, но в конце концов очень полезно.Из коробки никаких дополнительных надстроек не требуется, за исключением обновлений лицензии (возможно) (3) JMS, использующий виртуального пользователя Java, см.. http://en.wikipedia.org/wiki/Java_Message_Service .В итоге вы получаете небольшую Java-программу в Java template virtual user для LoadRunner.Вам придется иметь дело со всеми аспектами Java black magic, связанными с LoadRunner, но как только вы определитесь с комбинацией сведений о выпуске и установке, вы сможете использовать виртуальный тот же код для отправки практически любому поставщику JMS (не только MQ) с некоторыми измененными заводскими настройками подключения.

Вы также должны иметь возможность выполнять JMS с виртуальным пользователем веб-служб, но я не тестировал эту конфигурацию.Посмотрите на раздел JMS настроек времени выполнения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top