Расширенное редактирование HTTP-сценариев в IBM Rational Performance Tester

Источник: IBM

Запись и настройка сценариев для создания инфраструктуры тестирования требуют больших усилий. Небольшое изменение пользовательского интерфейса приложения или варианта использования может сделать сценарии непригодными для использования. IBM Rational Performance Tester имеет несколько мощных, но пока не очень известных возможностей редактирования сценариев, которые можно использовать для изменения всех HTTP-компонентов страницы для адаптации их к изменениям в приложении. Приянка Арора рассказывает, как тестировщики могут использовать эти возможности для редактирования HTTP-элементов Web-страницы, включая подключения, запросы, ответы, заголовки и содержимое. Она объясняет, как расширить эти возможности для добавления новых страниц к существующим записям тестов. Она также предлагает несколько методов, которые помогут определить, что и когда добавлять или изменять в сценарии, поддерживая его согласованность с изменениями в приложении и среде.

Введение

Современные ИТ-приложения и решения проходят много процессов компоновки, циклов выпуска, исправлений ошибок и улучшений кода. Эти изменения кода часто делают сценарии тестирования устаревшими или приводят к уменьшению доли успешности кода состояния страницы и элементов во время воспроизведения тестов. Повторная запись не всегда является единственным решением. IBM Rational Performance Tester позволяет изменять любой элемент Web-страницы, что делает возможной подстройку инфраструктуры тестирования практически под любой тип изменения интерфейса приложения.

В данной статье рассматривается использование этих возможностей. Статья содержит три темы:

  1. Изменение элементов Web-страниц в существующем сценарии тестирования, таких как подключение, запрос или ответ.
  2. Добавление новых страниц в существующие сценарии.
  3. Методы определения элементов, которые можно добавлять или изменять.

Редактирование элементов теста

Web-страница состоит из одного главного и нескольких второстепенных запросов. С каждым запросом ассоциируются объект подключения (connection object), атрибуты запроса (request attributes), заголовки (headers) и, возможноно, данные (data). Каждый запрос в Rational Performance Tester связан также с ответом , полученным от сервера во время создания записи.

В данном разделе рассматривается процедура изменения объектов запроса, ответа и подключения.

Подключение

Объект подключения определяется по имени хоста и по порту. Он может содержать информацию об SSL и прокси.

Изменение информации о подключении

Изменение хоста или порта приложения должно быть отражено в сценарии тестирования Rational Performance Tester. Для этого:

  1. Разверните главный запрос первой страницы в сценарии и выберите элемент Connection.
  2. В правом верхнем углу под Test Element Details щелкните правой кнопкой мыши на значении Host.
  3. Выберите connection, как показано на рисунке 1, чтобы открыть Server Connections под Test Variables.

Рисунок 1. Изменение подключения в сценарии тестирования
Рисунок 1. Изменение подключения в сценарии тестирования

Увеличенная версия рисунка 1.

  1. В правом верхнем углу под Test Element Details введите новое имя хоста для тестируемого приложения.
  2. Повторите шаги с 2 по 4, но в этот раз для параметра Port.

Изменение в аутентификации или безопасности

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

Добавление прокси-сервера

Для добавления к запросу прокси-сервера:

  1. Щелкните правой кнопкой мыши на объекте connection запроса в Test Contents.
  2. Выберите Add > Proxy.
  3. Введите значения для Host и Port под Test Element Details, как показано на рисунке 2.

Рисунок 2. Добавление прокси-сервера в объект connection
Рисунок 2. Добавление прокси-сервера в объект connection

  1. Сохраните тест и повторите, при необходимости, эти действия для всех объектов подключения.

Совет.
Аналогичные действия можно выполнять и для изменения в тесте существующего прокси-сервера.

При этом вы меняете прокси-сервер на уровне подключения. Поэтому все запросы, использующие этот объект подключения, теперь будут применять измененные настройки прокси-сервера.

Добавление аутентификации

Для добавления в запрос SSL-шифрования:

  1. Щелкните правой кнопкой мыши на объекте connection запроса в разделе Test Contents.
  2. Выберите Add > SSL.
  3. Под Test Element Details выберите значение в ниспадающем меню Protocol.
  4. Выберите имя шифра в списке Available Ciphers, как показано на рисунке 3.
  5. Сохраните сценарий и протестируйте его.

Рисунок 3. Добавление SSL-шифрования в объект connection
Рисунок 3. Добавление SSL-шифрования в объект connection

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

Все запросы, использующие этот объект подключения, теперь будут применять измененные настройки безопасности.

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

Запрос

HTTP-запрос состоит из метода, URL-адреса, заголовков и необязательного тела, содержащего данные.

Атрибуты

Для изменения атрибутов запроса:

  1. Выберите запрос под разделом Test Contents вкладки ConnectionEditing.
  2. Справа, под Test Element Details, измените значение URL, Version или Method, если необходимо. Для изменения Host или Port следуйте инструкциям, приведенным в подразделе Подключение.
  3. Перед редактированием заменяемые URL-компоненты (отмечены розовым цветом), необходимо удалить. Выберите заменяемый компонент и щелкните правой кнопкой мыши на Remove Substitution, как показано на рисунке 4.

Рисунок 4. Изменение атрибутов запроса в Rational Performance Tester
Рисунок 4. Изменение атрибутов запроса в Rational Performance Tester

Увеличенная версия рисунка 4.

  1. В диалоговом окне подтверждения нажмите кнопку Yes.

Теперь у вас есть возможность указать новый URL.

Заголовки

Для добавления, удаления или изменения существующих заголовков запроса:

  1. Выберите запрос для страницы в разделе Test Contents.
  2. Для добавления заголовка нажмите кнопку Add под Request Headers в Test Element Details.
  3. В окне Add/Edit Headers найдите заголовок, который хотите добавить в запрос, например Cache-Control. Если искомый заголовок в списке отсутствует, выберите Custom в списке Header Types, введите имя и значение заголовка и нажмите кнопку Insert.
  4. Нажмите кнопку > для добавления выбранного заголовка в список и определите значение, как показано на рисунке 5.

Рисунок 5. Изменение заголовков запроса
Рисунок 5. Изменение заголовков запроса

  1. Нажмите кнопку OK и сохраните тест.

Совет.
Аналогичные действия выполняются и при изменении существующих заголовков.

Ответ

Ответ на HTTP-запрос состоит главным образом из элементов Status (состояние), Headers (заголовки) и Content (содержимое).

Для доступа к элементам ответа разверните запрос в области Test Contents и нажмите кнопку Response. Справа под Test Element Details вы увидите элементы ответа.

Заголовки

Добавлять или изменять заголовки ответа можно точно так же, как и заголовки запроса. Подробности приведены в разделе Запрос.

Содержимое

Для изменения содержимого откройте ответ и под Test Element Details выделите значение в поле Content, как показано на рисунке 6. При необходимости можно либо полностью заменить это значение, либо отредактировать его сегменты.

Рисунок 6. Изменение содержимого ответа
Рисунок 6. Изменение содержимого ответа

Увеличенная версия рисунка 6.

Добавление новой страницы к существующей записи

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

Создание пустой страницы

Для добавления страницы необходимо прежде всего создать пустую страницу, а затем добавить на нее такие HTTP-элементы, как connection, request и response. Для создания пустой страницы:

  1. Под Test Contents выберите страницу, перед которой добавляется новая.
  2. Щелкните правой кнопкой мыши и выберите Insert > HTTP Page.
  3. В окне Select Server Connection выберите существующее подключение из теста или создайте новое для данной страницы. При создании нового подключения, которое вы намерены использовать в дальнейшем в тесте, выберите создание для него переменных теста, как показано на рисунке 7.

Рисунок 7. Добавление подключения для новой страницы
Рисунок 7. Добавление подключения для новой страницы

  1. Под Test Element Details укажите Title и Think Time.

Добавление запросов

По умолчанию Rational Performance Tester создает новую страницу с одним главным запросом. Вам нужно будет добавить атрибуты к этому запросу, а также добавить второстепенные запросы, если они есть. Данный раздел показывает, как изменить главный запрос и добавить второстепенные.

Для изменения главного запроса:

  1. Разверните страницу и щелкните левой кнопкой мыши на главном запросе.
  2. Под Test Element Details введите значение URL-адреса запроса за пределы хоста и метод (GET или POST).
  3. Если нужно добавить тестовые данные, нажмите кнопку Add под Data.
  4. Выберите добавленную строку и нажмите кнопку Modify.
  5. Введите текст в Data Chunk.
  6. Добавьте заголовки запроса. Более подробная информация приведена в разделе Заголовки.

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

Рисунок 8. Добавление запросов для новой страницы
Рисунок 8. Добавление запросов для новой страницы

Увеличенная версия рисунка 8.

Добавление ответов

Для добавления ответа на запрос:

  1. Под Test Contents разверните запрос.
  2. Выберите элемент response.

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

Рисунок 9. Добавление ответа на запрос для новой страницы
Рисунок 9. Добавление ответа на запрос для новой страницы

Увеличенная версия рисунка 9.

Когда и что добавлять или менять

Изменение в приложении или среде легко заметить, если это изменение настолько существенно, что приводит к неудачному выполнению сценария тестирования. Анализ log-файлов теста может показать отличия между ожидаемыми и полученными ответами. Однако не всегда ясно, как выделить информацию для определения изменений. Если группы разработки, обслуживания сети и эксплуатации не смогли определить никаких видимых изменений, можно прибегнуть к одному из приведенных ниже методов. Эти методы также будут уместны при добавлении новых страниц или запросов к существующей записи теста.

Инструменты браузера

Рынок предлагает несколько инструментальных средств Web-мониторинга, отслеживающих и регистрирующих HTTP-взаимодействия между Web-браузером и сервером. Одним из таких средств является бесплатная программа IBM Page Detailer от IBM Research (ссылка приведена в подразделе "Получить продукты и технологии" раздела Ресурсы). Она разбивает Web-страницу на компоненты и выполняемые для их извлечения действия.

Программу Page Detailer можно использовать для просмотра значений всех HTTP-элементов, таких как заголовки запросов и ответов, главный и второстепенные запросы и многое другое (см. рисунок 10). Она может оказаться простым решеннием для устранения ошибок выполнения сценариев, редактирования элементов и даже добавления новых страниц к существующим сценариям.

Рисунок 10. Компоненты Web-страницы в IBM Page Detailer
Рисунок 10. Компоненты Web-страницы в IBM Page Detailer

Увеличенная версия рисунка 10.

Исходный код страницы

Инструментальные средства Web-мониторинга полезны при определении значений заголовков и других элементов. Для получения текущего содержимого ответа можно просмотреть исходный код страницы. Выполните следующие действия:

  1. Откройте в Web-браузере URL-адрес главного или второстепенного запроса.
  2. Щелкните правой кнопкой мыши на странице и выберите View Source.

При этом откроется окно, отображающее содержимое Web-страницы (см. рисунок 11).

Рисунок 11. Исходный код Web-страницы
Рисунок 11. Исходный код Web-страницы

Увеличенная версия рисунка 11.

Таким образом, объем работы по поддержке инфраструктуры тестирования можно уменьшить, изменяя существующие сценарии вместо создания новых там, где это осуществимо.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=31175