Как заменить jmeter клавиши при запуске Тельца - PullRequest
0 голосов
/ 04 сентября 2018

Проблема:

В настоящее время я жестко кодирую пароль в моем тестовом файле jmeter .jmx. Я хочу иметь возможность установить это в config.yaml или в командной строке, используя что-то вроде переключателя "-o modules.jmeter.properties" (чтобы заменить это в конвейере CI)

Однако я не могу заставить ни одного из них фактически заменить значение в файле .jmx.

Я просмотрел Taurus doco и попытался сделать следующее.

Обновление файла config.yaml:

execution:
- executor: jmeter
  scenario:
   script: ../scripts/apigee_loadtesting.jmx
   data-sources:
    - ../datafiles/
 concurrency: 2
 ramp-up: 30s
 hold-for: 1m
 steps: 2

modules:
  jmeter:
    properties:
      es.password: P@ssw0rd!

Также попробовал это из командной строки:

bzt ../config.yaml -o modules.jmeter.path=/usr/local/apache-jmeter-4.0.2/bin/jmeter \
-o modules.jmeter.properties.espassword=P@ssw0rd! config.yaml

Но ни один из них, кажется, не имеет никакого значения, Любые предложения будут оценены

1 Ответ

0 голосов
/ 04 сентября 2018
  1. Сам Телец ничего не изменит в скрипте .jmx, просто убедитесь, что вы ссылаетесь на свойство, используя функцию __P () как ${__P(es.password,)} в скрипте .jmx, и значение будет заменено на тот из файла .jmx или переопределения командной строки.
  2. Я бы не использовал точки в именах свойств, так как это может вызвать проблемы с переопределением значений свойств из командной строки. Так что, если возможно, придерживайтесь espassword везде
  3. Измените вашу командную строку так, чтобы config.yaml был последним аргументом вроде:

    bzt -o modules.jmeter.path=/usr/local/apache-jmeter-4.0.2/bin/jmeter -o modules.jmeter.properties.espassword=P@ssw0rd! config.yaml
    

См. Навигация по первым шагам с помощью Taurus , чтобы получить дополнительную информацию о запуске тестов JMeter с помощью Taurus

.
...