JMeter -保存变量中的属性,但JMeter不解析变量

kpbwa7wx  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(167)

我正在使用JMeter属性文件读取器成功地从文件中获取值。
然后我使用一个简单的Groovy代码段将这些值保存在变量中。
那么,为什么JMeter仍然认为变量没有定义呢?
控制台的输出显示正在存储变量。

  1. for (i in props)
  2. if (i.key.startsWith('testData')) {
  3. vars.put(i.key, i.value)
  4. log.info(vars.get(i.key))
  5. }

tigapo.prop:

  1. testData.getUserHistoryPageUsingGETFile=HistoryControllerApi.csv
  2. testData.createBillingUsingPOSTFile=BillingControllerApi.csv
  3. testData.getCreditExchangeInfoUsingGETFile=BillingControllerApi.csv
  4. testData.handleTagDetectionUsingPOSTFile=TagDetectionControllerApi.csv
  5. testData.getSettingsUsingGETFile=SettingsControllerApi.csv
  6. testData.createUserUsingPOSTFile=UserControllerApi.csv

除了一个步骤之外,所有步骤都被禁用,没有错误,我在输出中得到了变量。

当我启用一个使用变量的步骤时,会显示错误。

下面是CSV数据配置:

为了使我的评论更容易阅读:按建议做了

并验证:

但还是没羞没臊:
第一个

laawzig2

laawzig21#

因为CSV数据集配置正在初始化JSR223预处理器之前,请查看JMeter测试元素的执行顺序:

  1. 0. Configuration elements
  2. 1. Pre-Processors
  3. 2. Timers
  4. 3. Sampler
  5. 4. Post-Processors (unless SampleResult is null)
  6. 5. Assertions (unless SampleResult is null)
  7. 6. Listeners (unless SampleResult is null)

CSV数据集配置是一个配置元素,因此它将在其他任何操作之前运行。
因此,您需要:
1.将JSR223预处理器转换为JSR223采样器
1.放在setUp Thread Group

相关问题