全部产品
云市场

导入脚本压测

更新时间:2019-10-17 19:49:06

PTS 支持将 JMeter 脚本(.jmx)和 Postman(.json)脚本转换为 PTS 原生的能力进行压测,提供更强的 RPS 压测模式,支持实时调速、细致到单接口的监控等。

背景信息

对 HTTP 或 HTTPS 协议的压测,PTS 支持将 JMeter 脚本(.jmx)和 Postman(.json)脚本中有关请求的基础信息解析为压测场景中的 API。

JMeter 脚本 与 PTS API 压测的字段对应关系如下:

Jmeter 脚本字段PTS-API 压测字段
测试计划 Test Plan压测场景
线程组 Thread Group串联链路
采样器 Sampler
(仅支持 HTTP Request)
Name压测 API 名称
Server Name or IP
Path
Port Number
压测 URL
Method请求方法
Parameters/Body DataBody 定义下的内容
HTTP Header ManagerHeadersHeader 定义下的 Key 和 Value。
- 全局或者区域生效的 Header 会填充到对应区域的 API 中。
HTTP Cookie ManagerUser-Defined CookiesHeader 定义下的 Cookie。
- 全局或者区域生效的 Cookie 会填充到对应区域的 API 中。

说明:

  • HTTP Header Manager、HTTP Cookie Manager 和 HTTP Request Default 导入时会取所有的并集到每个 API 中。

  • Cookie 相关的设置中,暂不支持导入 domain 和 path。

  • 导入时 Content-Type 默认都为 x-www-form-urlencode,如果需要切换为 raw 请先复制,否则会清空 Body 的内容。

  • 对于不支持导入的信息,您可以使用 PTS 提供的功能实现,例如断言指令(思考时间、集合点等)、参数化等。

Postman 脚本 与 PTS API 压测的字段对应关系如下:

Postman 脚本字段PTS-API 压测字段
info.name串联链路名
item[]为多个 API
item[0].nameAPI 名称
item[0].request.method请求方法
item[0].request.url.raw请求 URL
item[0].request.headerkeyheader 的 key
value对应的 value 值
item[0].request.body请求体
- POST 类型下,需要看是什么 content-type 来决定展示形式。

说明:

  • 若从 Postman 中 Collections 导出 json 脚本,建议使用 V2.1。

  • Postman(.json)脚本仅支持 GET、POST、PUT 或 DELECT 方法。

  • Postman(.json)脚本中不支持 File 模式。

  • 暂未支持同时上传及二进制类的 Content-Type,无法进行转换。

操作步骤

  1. 登录 PTS 控制台,在概览页单击快速压测,或者在左侧导航栏单击创建压测 > 快速压测

  2. 单击创建压测页面右上角的导入脚本

    import script

  3. 导入脚本对话框选择脚本类型,并单击上传图标上传脚本。

    select script

    说明:可选择的脚本类型有 JMeter脚本(.jmx)和 Postman(.json)脚本。一个压测场景仅能导入一个脚本,在未保存场景配置前,可重新上传脚本覆盖之前的导入内容。暂不支持在已有场景中导入脚本。

    PTS 支持导入的脚本说明及字段含义,请参见背景信息。请勿导入包含 PTS 不支持的类型或协议的脚本,若导入的脚本不合规,控制台将弹出错误提示框,例如:

    error message

  4. 导入脚本对话框中单击确定

    导入成功后,在创建压测页面,您可以看到脚本内容已转化为对应的 API 压测信息。

    97878_导入完成

后续操作

脚本导入成功后,您可以使用 PTS 提供的高级功能编排压测场景并发起压测,可参考以下文档:

更多信息

JMeter 原生压测