【问题标题】:How to pass variable as file name to jmeter CSV Data set Config?如何将变量作为文件名传递给 jmeter CSV 数据集配置?
【发布时间】:2017-01-04 11:19:22
【问题描述】:

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

这里首先 CSV 数据集 Config 返回文件名

1.csv
5.csv
1000.csv

现在我想将上述文件名传递给第二个 CSV 数据集配置 C:\\Softwares\\Installed\\jmeter-3.0\\bin\\TestData\\files\\${filename}

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

谢谢, 维杰

【问题讨论】:

    标签: csv jmeter


    【解决方案1】:

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

    选项在:

    1. 考虑使用 __CSVRead() 函数代替 CSV 数据集配置
    2. 切换到 JMeter 属性而不是 JMeter 变量。

      • ${filename} 更改为${__P(filename)}(语法见__P() function documentation
      • 定义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 属性以及设置、获取和覆盖它们的方法的更多信息,请参阅 Apache JMeter Properties Customization Guide

    【讨论】:

    • 嗨 Dmitri,实际上我在阅读列表时不知道该位置“C:\Softwares\Installed\jmeter-3.0\bin\TestData\files\”的文件列表使用另一个 CSV 数据集配置的文件。所以第一个 CSV 数据集配置会给我文件名列表,现在我想使用第二个 csv 数据集配置读取这些文件。但是在您提供的解决方案中,我需要为 user.property 文件提供文件名,这是不可能的,因为我不知道文件名。还有其他方法吗?
    • 如果您仔细研究答案,您会看到使用__CSVRead() 函数的建议。如果您不熟悉 JMeter 函数 - 请参阅 How to Use JMeter Functions 帖子系列
    猜你喜欢
    • 1970-01-01
    • 2017-05-14
    • 2018-02-23
    • 1970-01-01
    • 2022-01-15
    • 2021-08-02
    • 2015-09-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多