Jmeter:如何批量迭代csv文件?

我必须在Jmeter中进行测试,该测试使用csv文件作为数据源。

测试的要求是,对于每个请求(测试需要100个请求),都需要处理csv中的10.000行。

总而言之,这是测试的外观:

请求1->遍历前10.000行(1-10.000) 请求2->遍历接下来的10.000行(10.001-20.000) ... ... 请求100->遍历行990.001-1.000.000

我对Jmeter还是陌生的,所以我希望我能够解释我必须做的事情,但是如果您需要更多详细信息,请告诉我。

因此,从根本上说,有没有一种简单的方法可以通过添加某种控制器来做到这一点,或者它是否需要JSR223采样器以及其中的某些代码?

谢谢。

我正在测试一个存储有用于将产品标记为“已售”的应用程序,要求是检查该应用程序在销售100个批次(每个批次包含10.000个产品)时的行为。

该测试还具有一个带SOAP请求的采样器,soap请求xml中有一个包含产品序列号的节点,最初我尝试在此参数下硬编码10.000序列号,但结果不是预期的。

wangxd925 回答:Jmeter:如何批量迭代csv文件?

我将把原始的“大” CSV文件拆分为较小的CSV文件,每个文件包含10000行。

  1. setUp Thread Group添加到您的测试计划中
  2. JSR223 Sampler添加到线程组
  3. 将以下代码放入“脚本”区域:

    SampleResult.setIgnore()
    
    def largeFile = new File('largefile.csv')
    
    def i = 0
    def smallFilePostfix = 0
    def smallFile = new File('smallfile' + smallFilePostfix + '.csv')
    largeFile.each { line ->
        if (i >= 10000) {
            i = 0
            smallFilePostfix += 1
            smallFile = new File('smallfile' + smallFilePostfix + '.csv')
        }
        i = i + 1
        smallFile << line << System.getProperty('line.separator')
    }
    
  4. 就是这样,上面的代码会将largefile.csv拆分为smallfile0.csvsmallfile1.csv等,每个包含10000行,通常可以使用{{3} }

本文链接:https://www.f2er.com/3164280.html

大家都在问