运行Taurus时如何更换jmeter键

时间:2018-09-04 06:19:10

标签: jmeter blazemeter taurus

问题:

我目前正在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 :(得分:0)

  1. Taurus本身不会更改.jmx脚本中的任何内容,只需确保在.jmx脚本中使用__P() function作为${__P(es.password,)}来引用属性,并且该值将被替换为.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测试的更多信息,请参见Navigating your First Steps Using Taurus文章