从CSV中为每条记录执行Jmeter多次执行

时间:2012-09-06 07:07:10

标签: java jmeter load-testing qa

我有一个包含100条记录/行的CSV,我希望使用JMeter执行(通过服务)。

现在,我希望每次执行3次记录(每次记录延迟5秒后),并对CSV中的所有100条记录执行相同操作。

如何使用JMeter进行此操作?

1 个答案:

答案 0 :(得分:6)

使用jmeter' s standard components看起来难以实现。

  1. 使用CSV Data Set Config下正确配置的While Controller来读取csv文件中的所有条目。
  2. 在同一周期中,使用Loop Controller设置为必需的循环计数 - 这将使用从每个csv条目中提取的变量重复您的请求N次。
  3. 在循环控制器下使用合适的sampler,例如HTTP Request Sampler,使用来自csv-entry的参数发送您的请求。
  4. 与采样器一起使用任何timer,例如Constant Timer,在每次请求后添加延迟。
  5. 架构可能如下所示:

    Thread Group
    Number of Threads = 1   
    Loop Count = 1
        . . .
        While Controller                 // this will iterate through your csv-file
        Condition = ${__javaScript("${var1}"!="",)}  // this will repeat until EOF
            CSV Data Set Config
            Filename = ...               // path to your csv file
            Variable Names = var1,...    // these are records read from file into pointed variables
            Delimiter = ,
            Recycle on EOF? = False
            Stop thread on EOF? = True
            Sharing Mode = Current thread group
    
            Loop Controller
            Loop Count = 3
                HTTP Request Sampler
                Constant Timer
                Thread Delay (in ms) = 5000
            . . .