Jmeter:使用具有不均匀列的 CSV 文件来测试驱动采样器
Posted
技术标签:
【中文标题】Jmeter:使用具有不均匀列的 CSV 文件来测试驱动采样器【英文标题】:Jmeter: Using CSV file with uneven columns to test drive sampler 【发布时间】:2021-06-10 08:23:35 【问题描述】:我有一个包含商店列表的 csv 文件。每个商店有 10 个部门。 我需要为 100 家商店的所有 10 个部门进行 GET API 调用。所以我在 CSV 文件中的列不是前夕。我将有 A 列有 100 个商店 ID,B 列有 10 个部门 ID。 如何在 Jmeter 采样器中使用每个 Store ID 10 次(每个部门 ID 一次)?
【问题讨论】:
【参考方案1】:如果您想使用 CSV Data Set Config 实现此目的 - 唯一的方法是将您的 CSV 文件拆分为 2 个单独的文件
如果 CSV 文件来自外部来源且无法更改 - 您可以考虑使用 __groovy() function 类似:
$__groovy(new File('test.csv').readLines().get(vars.get('__jm__Loop Controller - Store__idx') as int).split('\,')[0],)
给定示例 CSV 文件 test.csv
,其内容如下:
store1,department1
store2,department2
,department3
,department4
,department5
,department6
,department7
,department8
,department9
,department10
您可以使用以下方法实现您的要求:
有关 JMeter 中 Groovy 脚本的更多信息:Apache Groovy - Why and How You Should Use It
【讨论】:
感谢您的回答。看起来它必须使用一些编码,因为我需要在同一个调用中使用 Store 和部门作为参数。否则循环图像很棒。 将两个函数放在一个请求中是没有问题的以上是关于Jmeter:使用具有不均匀列的 CSV 文件来测试驱动采样器的主要内容,如果未能解决你的问题,请参考以下文章
如何将具有 1 列文件的 CSV 导入具有 2 列的 DB 表?