среда, 26 декабря 2007 г.

Нагрузочное тестирование - стандартизируем нагрузочные тесты на LoadRunner

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

Далее в статье предлагаю ознакомиться с разработанной мной методикой написания скриптов, используя для нагрузочного тестирования HP (Mercury) Load Runner (конечно же предложенный мной подход будет актуален и для многих других инструменов, но в данной статье разберем его на примере именно предложенного мной). Рассмотрим некоторые пункты, которые на мой взгляд требуют особого внимания и обязательной стандартизации:

  1. структура каталогов тестового сценария
  2. структура тест скриптов
  3. названия тест скриптов
  4. типы и названия параметров
  5. названия транзакций
Теперь более подробно пройдемся по каждому из пунктов.

Структура каталогов тестового сценария

Директорий проекта:
  • parameters - директорий глобальных параметров тестового сценария (более подробное описание глобальных параметров смотрите ниже в разделе "название параметров")
  • scripts - директорий хранения тестовых скриптов
  • scenarios - директорий хранения сценариев или тестовой модели

Структура тест скриптов

В LoadRunner тестовые скрипты уже разделены на 3 части:
  • Init - используется для инициализации VUser, т.е. в него целесообразно помещать те части скрипта, которые не требуют постоянных повторений, такие как вход в тестируемую систему, конечно если мы не тестируем именно эту часть приложения. (Может быть пустым)
  • Action - рабочая часть скрипта. В него помещают те действия, которые будут выполняться и результаты которых будут замеряться и сохраняться, а в последствии анализироваться. (Колличество блоков Action может быть разным, в зависимости от архитектуры тестового скрипта)
  • End - корректное завершение теста.(Может быть пустым)

Названия тест скриптов

Для удобства чтения тестового скрипта рекомендую всем членам команды использовать одинаковый формат названий скриптов:
  • формат - начинается с названия тестируемого действия, затем компонента. Каждое слово начинается с большой буквы, без пробелов
  • символы - английский алфавит, цифры, подчеркивание
Пример: AddDomains_100

Типы и названия параметров

Сдав несколько проектов, протестированных с помощью LoadRunner, я заметил, что разные скрипты содержат одинаковые параметры. А если учесть, что зачастую параметры хранятся в файлах, то мы получаем некоторое количество одинаковых файлов в каждом скрипте. От этого можно достаточно просто избавиться.
Условно разобъем параметры на 2 типа:
  • глобальные - параметры использующиеся в большом количестве скриптов внутри сценария, например: хост тестируемого приложения, параметры доступа к БД и т.д. Глобальные параметры хранятся в каталоге parameters проектной директории. В скрипте же, путь к файлу параметров зададим относительно папки скрипта, а именно: "..\parameters\"
  • локальные - параметры конкретного тестового скрипта. Хранятся внутри директории каждого конкретного скрипта
Рекомендую, параметрам давать названия с маленькой буквы, с возможным подчеркиванием, как разделителем кей вордов.

Названия транзакций

Для удобства чтения рекомендую транзакции LoadRunner называть с большой буквы, начинается с кейворда TX, каждый кей ворд разделен подчеркиванием
Пример: TX_ADD_DOMAIN_100


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

Комментариев нет:

Условия копирования публикаций:

Все публикации в данном блоге являются частной собственностью авторов. Любое копирование информации допускается только при условии указания имени автора и активной ссылки на источник.