Blazemeter 不会取代 JMeter 属性
Blazemeter is not replacing JMeter property
我有一个 JMeter 脚本,我在其中使用配置元素“用户定义的变量”定义了一些变量
并且在本地使用 ${host}
例如在请求中它工作正常。我将此脚本上传到 Blazemeter 并启用了属性覆盖:
然而,当我 运行 在 Blazemeter 中进行测试时,新的主机值根本没有被替换。我是不是做错了什么,还是我误解了这个功能在 Blazemeter 中的工作原理?
当您在用户定义的变量组件中定义变量时,您可以使用 ${VariableName}
访问它们,因为它们充当 JMeter variables。
当您在 Blazemeter 中定义变量时,它们充当 JMeter 属性。您可以使用 ${__P(PropertyName,)}
访问 JMeter properties。您不能使用 ${VariableName}
访问。 JMeter 属性。
例如 ${__P(host,)}
你的情况
您可以通过读取属性并将它们分配给用户定义变量组件中的现有 JMeter 变量来继续使用现有脚本
您可以将默认值设置为 属性 ${__P(host,defaultHost)}
。该脚本将在本地环境和 Blazemeter 上继续 运行。
我没看到你在哪里“定义”变量,也就是说我看到的是名称,而不是值。
为了引用您在测试计划中通过 JMeter Properties section of the BlazeMeter load test configuration you need to use __P() or __property() 函数提供的值,例如:
这样你就可以override the properties locally using -J
command line argument喜欢:
jmeter -Jhost=some-host -n -t test.jmx
并使用 BlazeMeter 的 Jmeter Properties
部分执行相同的操作。
我有一个 JMeter 脚本,我在其中使用配置元素“用户定义的变量”定义了一些变量
并且在本地使用 ${host}
例如在请求中它工作正常。我将此脚本上传到 Blazemeter 并启用了属性覆盖:
然而,当我 运行 在 Blazemeter 中进行测试时,新的主机值根本没有被替换。我是不是做错了什么,还是我误解了这个功能在 Blazemeter 中的工作原理?
当您在用户定义的变量组件中定义变量时,您可以使用 ${VariableName}
访问它们,因为它们充当 JMeter variables。
当您在 Blazemeter 中定义变量时,它们充当 JMeter 属性。您可以使用 ${__P(PropertyName,)}
访问 JMeter properties。您不能使用 ${VariableName}
访问。 JMeter 属性。
例如 ${__P(host,)}
你的情况
您可以通过读取属性并将它们分配给用户定义变量组件中的现有 JMeter 变量来继续使用现有脚本
您可以将默认值设置为 属性 ${__P(host,defaultHost)}
。该脚本将在本地环境和 Blazemeter 上继续 运行。
我没看到你在哪里“定义”变量,也就是说我看到的是名称,而不是值。
为了引用您在测试计划中通过 JMeter Properties section of the BlazeMeter load test configuration you need to use __P() or __property() 函数提供的值,例如:
这样你就可以override the properties locally using -J
command line argument喜欢:
jmeter -Jhost=some-host -n -t test.jmx
并使用 BlazeMeter 的 Jmeter Properties
部分执行相同的操作。