JMeter模拟上传

若您需要对文件、图片的上传接口进行压测,可以使用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。在Parameters页签下,单击Add来添加请求Body中的参数信息。
    一般上传接口中无需填写,视具体请求来配置。配置项说明如下:
    配置项说明示例值
    Name参数名
    Value参数值
    URL Encode?是否进行encode编码选中后会进行encode编码,默认不选中。
    Content-Type内容类型text/plain
    Include Equals无Value值的参数是否需要等号(=)选中之后URL会变为http://www.example.org/?login=
  6. 单击Files Upload页签,并单击Add添加参数信息。
    配置项说明示例值
    File Path文件路径填写文件名。注意:将该脚本上传至PTS发起压测时,需直接填写文件名,勿添加本地地址。
    Parameter Name参数值file
    MIME Type内容类型image/png
    配置示例如下图所示:ADD
  7. 右键单击HTTP Request Sampler的上传,选择Add > Config Element > HTTP Header Manager,添加Header信息。上传接口一般需要配置Cookie和Content-Type。如果Thread Group中有登录操作,可不单独设置Cookie。
    配置示例如下图所示:HTTP Request
  8. 右键单击Thread Group 模拟上传,选择Add > Listener > View Results Tree,在线程组中查看结果树。
  9. 保存测试计划文件,进行脚本调试。
    根据View Result Tree查看该上传脚本的请求信息,示例如下图所示:View Result Tree

步骤二:使用JMeter原生压测

调试成功后,需要在PTS控制台选择JMeter原生压测模式并上传该测试脚本及相关文件进行压测。具体操作,请参见创建JMeter场景

JMeter压测