Вопрос

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

Быстрый, общий, пример

<Ол>
  • Вы переходите на веб-страницу
  • Введите некоторую информацию в форму
  • Нажмите Сохранить
  • За кулисами новая запись заносится в базу данных
  • Вы хотите отредактировать только что введенную вами запись, чтобы перейти на другую веб-страницу. За кулисами передается странице параметр с идентификатором базы данных только что созданной строки
  • При выполнении шага 5 вышеприведенного теста параметр страницы / идентификатор базы данных будет меняться каждый раз.

    Рабочий процесс / стратегия, которую я сейчас использую,

    <Ол>
  • Запишите тест, используя вышеуказанные действия
  • Запишите каждое место, где переменная строки запроса может меняться от запуска к выполнению
  • Используйте экстрактор XPath или Regular Expression для извлечения значения из ответа в переменную JMeter
  • Замените все соответствующие экземпляры жестко запрограммированного параметра на указанную выше переменную.
  • Это работает и может быть автоматизировано до определенной степени. Тем не менее, он может стать утомительным, подвержен ошибкам и хрупким. Есть ли лучший / общепринятый способ справиться с этой ситуацией? (Или именно поэтому большинство людей просто используют JMeter для воспроизведения журналов? (-;)

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

    Решение

    Похоже, ты на правильном пути. Лучшее, что может быть достигнуто с помощью JMeter, - это извлечение переменных страницы с помощью регулярного выражения или постпроцессора xpath. Однако вы абсолютно правы в том, что это не масштабируемое решение, и его становится все сложнее поддерживать или расширять.

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

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

    Мы добились большого успеха в тестировании подобных сценариев с помощью JMeter, сохранив параметры в переменных JMeter в утверждении JDBC. Затем мы выполняем http get / post и используем утверждение BSF, а javascript выполняет комплексную проверку ответа. Надеюсь, это поможет

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