若您需要对文件、图片的上传接口进行压测,可以使用JMeter编写脚本来模拟上传功能,然后通过PTS的JMeter原生压测方式发起压测。本文为您介绍如何使用JMeter客户端构造场景,并在PTS控制台完成压测。

前提条件

已在本地安装JMeter客户端。

步骤一:编写JMeter脚本

以下步骤将介绍如何通过编写JMeter脚本实现模拟上传功能。

  1. 启动JMeter客户端。
  2. 在JMeter客户端右键单击Test Plan,选择Add > Threads(Users) > Thread Group,为JMeter测试计划添加线程组,示例命名为“模拟上传”。
  3. 在JMeter客户端右键单击Thread Group,选择Add > Sampler > HTTP Request,在线程组中添加HTTP请求,示例命名为“上传”。
  4. 根据业务实际接口,填写HTTP Request Basic页签下的基本信息。
    示例如下:
    • Protocol:http
    • Server name or IP:www.example.com
    • Port Number:8080
    • Method:POST
    • Path:/fileupload
  5. 勾选Use multipart/form-data
  6. Parameters页签下,单击Add来添加请求Body中的参数信息。
    一般上传接口中无需填写,视具体请求来配置。配置项说明如下:
    配置项 说明 示例值
    Name 参数名
    Value 参数值
    URL Encode? 是否进行encode编码 选中后会进行encode编码,默认不选中。
    Content-Type 内容类型 text/plain
    Include Equals 无Value值的参数是否需要等号(=) 选中之后URL会变为http://www.example.org?login=
  7. 单击Files Upload页签,并单击Add添加参数信息。
    配置项 说明 示例值
    File Path 文件路径 填写文件名。注意:将该脚本上传至PTS发起压测时,需直接填写文件名,勿添加本地地址。
    Parameter Name 参数值 file
    MIME Type 内容类型 image/png
    配置示例如下图所示:ADD
  8. 右键单击HTTP Request Sampler的上传,选择Add > Config Element > HTTP Header Manager,添加Header信息。上传接口一般需要配置Cookie和Content-Type。如果Thread Group中有登录操作,可不单独设置Cookie。
    配置示例如下图所示:HTTP Request
  9. 右键单击Thread Group 模拟上传,选择Add > Listener > View Results Tree,在线程组中查看结果树。
  10. 保存测试计划文件,进行脚本调试。
    根据View Result Tree查看该上传脚本的请求信息,示例如下图所示:View Result Tree

步骤二:使用JMeter原生压测

调试成功后,需要在PTS控制台选择JMeter原生压测模式并上传该测试脚本及相关文件进行压测。详情请参见JMeter压测

JMeter压测