7

我有一个 curl 请求,但我不知道如何在 jmeter 中转换它:

curl -H application-id:my-app-id -H secret-key:my-secret-key -H Content-Type:"multipart/form-data" -H application-type:REST --form upload=@/ logo.jpg -X POST -v http://localhost:8080/api/v1/files/Photos/logo.jpg

这样做的最佳方法是什么?

4

3 回答 3

6

选项 1:记录请求

在 JMeter 中:

  1. 文件 -> 模板 -> 录制 -> 创建
  2. 工作台 -> HTTP(S) 测试脚本记录器 -> 开始

在控制台中:

 curl -x localhost:8888 -H application-id:my-app-id ......

选项 2:手动构建请求

  1. 添加HTTP 请求采样器并配置如下:

    • 服务器名称:localhost
    • 端口号:8080
    • 方法:POST
    • 小路:/api/v1/files/Photos/logo.jpg
    • 检查Use multipart/form-dataPOST
    • 切换到“文件上传”选项卡
    • 单击“添加”并提供 logo.jpg 文件的完整路径,upload作为参数名称和image.jpgMIME 类型
  2. 添加HTTP 标头管理器并在此处提供标头名称和值


参考:

  1. 卷曲手册页
  2. JMeter 代理一步一步
  3. 如何使用 JMeter 的模板功能节省“负载”时间
于 2016-05-26T04:54:04.520 回答
3

简单的 。

  1. 创建一个线程组。

    右键单击 TestPlan --> 线程--> 线程组

  2. 添加 HTTP 标头管理器添加所有标头条目

    右键单击 Step1 中创建的 Thread Group --> Add-->ConfigElement-->HTTP Header Manager 并添加 all[ -H application-id:my-app-id -H secret-key:my-secret-key -H Content-Type:"multipart/form-data" -H application-type:REST] 注意:这里你不必附加 -H

  3. 添加 HTTP 采样器

    右键单击在 Step1 中创建的 ThreadGroup --> Add-->Sampler-->HTTP Sampler 提供 ServerName 或 IP = 本地主机和端口 = 8080 和路径 =/api/v1/files/Photos/logo.jpg 和方法=发布并且有发送文件的添加部分相应添加

  4. 添加侦听器以验证请求

    右键点击Step1中创建的ThreadGroup --> Add-->Listener--> View result tree

到最后你的 Jmeter 脚本应该喜欢

TestPlan
  ThreadGroup[threads =1 loopcount=1]
    HTTP HeaderManager
    HTTPSAmpler
    View Result Tree

快乐测试。有关更多信息http://jmeter.apache.org/usermanual/component_reference.html 如果有帮助,请不要忘记点击回答。

于 2016-05-25T15:17:13.740 回答
2

对于 JMeter 5.1 或更高版本。就像在 Postman 中一样,从 curl 创建测试计划有一个更简单的解决方案

ToolsImport from curl→ 将你的卷发粘贴到盒子里 →Create Test Plan

在某些旧版本中,路径可以是:

HelpImport from curl→ 将你的卷发粘贴到盒子里 →Create Test Plan

于 2021-01-07T02:23:10.987 回答