Разделы портала

Онлайн-тренинги

.
Основы JMeter, часть 1: переменные
19.11.2020 00:00

jmeter1Автор: Джуао Фариас (João Farias)
Оригинал статьи
Перевод: Ольга Алифанова

 

В прошлый раз мы заложили фундамент для исследования производительности сервиса orderbook в Mercado Bitcoin, бразильском обменнике криптовалюты.

Скачать код можно здесь.

В этот раз мы начнем разрабатывать более детальный набор тестов.

 

jmeter2

Что мы имеем сейчас

  • Две группы потоков: одна для валюты Litecoin (LTC), и одна для Bitcoin (BTC);
  • Для каждой группы потоков мы будем стучаться к двум эндпойнтам:
    • Orderbook: список запросов и список ставок.
    • Trades: список всех завершенных сделок с информацией о цене, количестве и дате.

Обновленный тест-план можно скачать здесь.

В чем проблема?

Если пристально рассмотреть новый тест-план, можно увидеть, что многие строки дублируются в каждой группе потоков и в каждом образце:

  • Значения конфигурации группы потоков

 

  • Имя сервера и HTTP-протокол

  

  • Имя криптовалюты

 

 

  • Путь (эндпойнт), к которому мы хотим попасть

 

 

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

Исправим это при помощи переменных JMeter.

Переменные

JMeter позволяет создавать переменные на уровне тест-плана.

Во вкладке тест-плана можно увидеть область для определения переменных.

 

После определения переменных их можно использовать через нотацию ${имя_переменной}.

В группах потоков:

 

 

И в HTTP-запросах:

 

 

 

 

И при запуске JMeter подставит правильное значение вместо плейсхолдера:

 

Вот и все! Базовые конфигурационные значения задаются всего один раз, и наши тесты удобопонятны и легко поддаются изменению.

Обсудить в форуме