Jmeter 性能和负载测试

时间:2021-02-21 16:32:23

标签: jmeter

我需要使用 HTTP 请求在 JMeter 中加载多个文件。我们可以使用单个 HTTP 请求吗?文件采用 JSON 格式。是否可以使用单个 HTTP 请求。

或者我需要执行多个 HTTP 请求。我有 10,000 个文件要提取,我需要将其自动化。

3 个答案:

答案 0 :(得分:0)

两种选择都可以

  1. 单个请求,多个文件 - 您必须使用 JSR223 PreProcessorGroovy 语言编写一些脚本,示例代码:

    import org.apache.commons.io.FileUtils
    import org.apache.commons.io.filefilter.TrueFileFilter
    import org.apache.jmeter.protocol.http.util.HTTPFileArg     
    
    def files = FileUtils.listFiles(new File("/path/to/folder/with/your/json/files"), TrueFileFilter.INSTANCE, TrueFileFilter.INSTANCE)
    
    def arguments = []
    
    files.eachWithIndex { file, index ->
        arguments.add(new HTTPFileArg(file.getAbsolutePath(), "your_parameter_name", "application/json"))
    }
    
  2. 多个请求,每个请求一个文件 - 最简单的选择是使用 Directory Listing Config 插件

答案 1 :(得分:0)

我尝试在文件上传中添加文件

Image of File Upload

我应该添加哪个路径.... def files = FileUtils.listFiles(new File("C:\Users\surisi\Documents\Jmeter\JSON_INPUTS\FULL"), TrueFileFilter.INSTANCE, TrueFileFilter.INSTANCE)

答案 2 :(得分:-1)

import org.apache.commons.io.FileUtils

导入 org.apache.commons.io.filefilter.TrueFileFilter 导入 org.apache.jmeter.protocol.http.util.HTTPFileArg

def files = FileUtils.listFiles(new File("C:\Users\surisi\source\repos\Product\src\AzureFunctions\Common.Test.Data\Articles\Full\7635.json"), TrueFileFilter.INSTANCE , TrueFileFilter.INSTANCE)

def 参数 = []

files.eachWithIndex { 文件,索引 -> arguments.add(new HTTPFileArg(file.getAbsolutePath(), "Content-Type", "application/json"))