首页 > 解决方案 > 有没有办法开始阅读我们在 JMeter 的 CSV 数据集配置中停止的位置?

问题描述

我创建了一个从 JMeter 中的 CSV 数据集配置读取用户的测试。例如,当我运行测试时,JMeter 会读取 CSV 文件中的前 20 个用户。然后,如果我再次运行相同的测试,JMeter 会再次读取 CSV 文件中的前 20 个用户。但我希望 JMeter 读取 20 个用户,但必须从第 21 个用户开始读取,依此类推。有没有办法让这成为可能?

标签: testingjmeter

解决方案


根据CSV 数据集配置文档:

默认情况下,文件只打开一次,每个线程将使用文件中的不同行。但是,将行传递给线程的顺序取决于它们的执行顺序,这可能在迭代之间有所不同。在每次测试迭代开始时读取行。文件名和模式在第一次迭代中被解析。

所以没有办法指定读取文件的“偏移量”,选项在:

  1. 使用__CSVRead() 函数,您可以${__CSVRead(/path/to/your/file.csv,next)}根据需要多次调用以“跳过”已经“使用”的行
  2. 使用setUp Thread GroupJSR223 Sampler以编程方式从 CSV 文件中删除前 20 行
  3. 转到Redis 数据集配置,而不是您可以Recycle Data on Use选择的地方,如果您将其设置为False“使用”数据将被删除

推荐阅读