如何在JMeter中使用curl请求?

时间:2015-10-06 13:06:39

标签: curl file-upload jmeter load-testing qa

我有这样的卷曲命令:

curl -X POST -T "{sample_data.csv}" -H "Content-Type: text/csv" https://api.mysite.com/v1/jobs/upload.json?key={api_key}

问题是我不明白JMeter中的哪个组件应该通过"{sample_data.csv}"文件上传到端点。

现在我有这样的配置:

enter image description here

当我进行测试时它会告诉我:

"error":{"message":"Un-Acceptable format, Content-Type must be one of those listed in \"formats\" but you sent \"multipart/form-data; boundary=E-VEr1-ZesF7xja5HezBWptB6xP_gsGODn\"","formats":["text/csv","text/plain","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/json","application/xml","application/vnd.oasis.opendocument.spreadsheet"]}}

2 个答案:

答案 0 :(得分:2)

  1. 将“协议”更改为https
  2. 取消选中“将多部分/表格数据用于POST”
  3. 在“使用请求发送文件”中,单击“添加”并提供文件位置
  4. HTTP Header Manager添加到已发送的“Content-Type”标头中,其值为“text / csv”

答案 1 :(得分:0)

要使用JMeter模拟此卷曲调用,您需要:

HTTP Request Sampler配置如下:

  • 服务器名称或IP: anarinsky.aaa.com
  • 协议: http
  • 方法: POST
  • 路径: /rest/secure/requestOrderMultipleAttr/skuOrderList/AAA_Prod_Go_d2/quantityAdult/1/quantityChild/1/email/anarinsky@aaa.com
  • 参数: 名称电子邮件价值:anarinsky@aaa.com

HTTP Authorization Manager作为HTTP请求的子代(如果您只想为此HTTP请求使用用户名/密码),或者如果您打算将其用于范围内的所有请求,则为同一级别。

  • 用户名: anarinsky@aaa.com
  • 密码: a1234

根据此示例调整您自己的参数。