如何将变量作为文件名传递给jmeter CSV数据集配置?

如何将变量作为文件名传递给jmeter CSV数据集配置?,csv,jmeter,Csv,Jmeter,我在一个线程中使用多个csv文件进行比较 这里,第一个CSV数据集配置返回文件名 1.csv 5.csv 1000.csv 现在我想把上面的文件名传递给第二个CSV数据集配置 C:\\Softwares\\Installed\\jmeter-3.0\\bin\\TestData\\files\\${filename} 在jmeter中可能吗?谁能帮我解决这个问题 谢谢, VijayCSV数据集配置在任何JMeter变量之前被初始化,因此您的${filename}将永远无法解析,并且您将收到“未

我在一个线程中使用多个csv文件进行比较

这里,第一个CSV数据集配置返回文件名

1.csv
5.csv
1000.csv
现在我想把上面的文件名传递给第二个CSV数据集配置
C:\\Softwares\\Installed\\jmeter-3.0\\bin\\TestData\\files\\${filename}

在jmeter中可能吗?谁能帮我解决这个问题

谢谢,
Vijay

CSV数据集配置在任何JMeter变量之前被初始化,因此您的
${filename}
将永远无法解析,并且您将收到“未找到文件”错误

选项包括:

  • 考虑使用函数而不是CSV数据集配置
  • 切换到JMeter属性,而不是JMeter变量

    • ${filename}
      更改为
      ${{P(filename)}
      (有关语法,请参阅)
    • 定义
      filename
      属性。可以通过两种方式完成:

      • 通过user.properties文件。将下一行添加到文件:

        filename=C:\\Softwares\\Installed\\jmeter-3.0\\bin\\TestData\\files\\1.csv
        
        需要重新启动JMeter才能获取属性

      • 通过
        -J
        命令行参数:

        jmeter -Jfilename=C:\Softwares\Installed\jmeter-3.0\bin\TestData\files\1.csv
        
      有关JMeter属性以及设置、获取和重写它们的方法的更多信息,请参阅


  • 嗨,Dmitri,实际上我不知道这个位置“C:\Softwares\Installed\jmeter-3.0\bin\TestData\files\”的文件列表,因为我正在使用另一个CSV数据集配置读取文件列表。因此,第一个CSV数据集配置将提供文件名列表,现在我想使用第二个CSV数据集配置读取这些文件。但在您提供的解决方案中,我需要为user.property文件指定文件名,这是不可能的,因为我不知道文件名。还有别的方法吗?如果你仔细研究一下答案,你会看到使用这个函数的建议。如果您不熟悉JMeter函数,请参阅posts系列