我正在使用JMeter的v5.1.1,并尝试使用“ CSV数据集配置”。从Debug Sampler / Results树中可以看出,文件已正确读取,但是没有逐行读取文件。换句话说,它读取第一行,并且从不进行下一行处理。 我想使用CSV中的数据来遍历一系列对外部API的HTTP请求。我目前只有一个线程,仅包含“ CSV数据集配置”和“ HTTP请求”。 我是否需要使用ForEach控制器或其他循环结构包装它?也许我想念它,但是在documentation中看不到这表明它是必要的。
谢谢
答案 0 :(得分:0)
您不需要将其包装在ForEach循环中。 CSV文件的第一行是var名称:
假设您的csv文件看起来像
foo, bar
1, John
2, George
3, Laura
然后您使用http请求采样器 然后$ {foo}和$ {bar}将被依次迭代。但是,请确保您注意CSV数据集配置选项。以下选项适合我:
答案 1 :(得分:0)
默认情况下,CSV数据集配置不会触发任何“循环”,它会从CSV文件中为每次迭代的每个线程(虚拟用户)读取下一行。
因此,如果您想从CSV文件中查看更多值-dd more users或循环或两者兼而有之。
给出
此CSV文件:
line1
line2
line3
遵循CSV Data Set Config设置:
以及以下Thread Group设置:
您将获得以下值(假设__threadNum() function可以显示当前的虚拟用户数,而${__jm__Thread Group__idx} pre-defined variable可以显示当前的线程组迭代):
查看JMeter Parameterization - The Complete Guide文章,详细了解使用外部数据源对JMeter测试进行参数化的各种方法