读取循环控制器Jmeter中的csv值

Ale*_* Le 4 csv loops jmeter

我在线程组中有一个循环控制器来读取一个 csv 文件,并且我想读取该 csv 文件中的所有行。我配置我的线程组如下:

  • 循环控制器(4次)
    • 读取 csv 文件(EOF 时回收:False,EOF 时停止线程:True,共享模式:所有线程)

我使用多个线程运行此场景:2

  • 使用第一个线程,读取 CSV 文件的第一行

  • 使用第二个线程,读取 CSV 文件的第二行

每次循环后,我从 CSV 文件获取的数据都没有更改,那么我如何在循环后读取 csv 的每一行(从第三行开始,...)?

Vad*_*aev 5

您必须将CSV Data Set Config作为Loop Controller的子项。
它应该适用于您指定的 CSV 数据集配置设置。我创建测试计划:

    线程组
    线程数 = 2
        循环控制器
        循环计数 = 4
            CSV 数据集配置
            文件名:...(此处为您的 csv 文件)
            变量名称:数字
            分隔符:,
            EOF 时回收 = False
            在 EOF = True 时停止线程
            共享模式 = 所有线程
            JSR223采样器
            log.info(vars.get("number")); // 输出${number}变量值

每次循环我的“CSV 数据集配置”都会将行读入“数字”变量。
JSR223 Sampler 将其值打印到日志查看器。

我的 CSV 文件看起来像

1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)

因此,由于 EOF 上的回收为 FALSE,EOF 上的停止线程为 TRUE,第一个线程在循环中读取 4 行,第二个线程仅读取第 5 行,然后停止。

看图片