若需进一步指定特殊请求来进行压测,或定义Header不能满足您的压测需求时,可以通过定义Body来实现。本文介绍如何定义Body及相关示例。

操作步骤

  1. 登录PTS控制台,在左侧导航栏选择创建压测 > 创建PTS场景

  2. 场景配置页签中串联链路模块单击下拉箭头,并在展开区域配置基本信息,具体步骤请参见配置基本请求信息
    说明 压测API的请求方式为POST或PUT才能定义Body。
  3. 单击Body定义页签。

    Body定义页签中定义Body的内容。定义Body的内容取决于请求参数类型(Content-Type),参数类型分为x-www-form-urlencodedraw自定义三种。

    参数 描述
    x-www-form-urlencoded 即数据被编码为名称/值对。
    说明 选择x-www-form-urlencoded类型时,如果定义的Body已编码(例如 “%25” 即为 “%” 编码后的值),那么压测前需要先对Body解码,以避免PTS对已编码的请求再次编码引起错误。单击编辑框右上角的对Body进行decode并选择解码格式UTF-8或者GBK完成解码操作。
    raw
    • Text(text/plain):纯文本格式的编码形式(TEXT/XML/HTML)。
    • JSON(application/json):JSON字符串。
    • JavaScript(application/javascript):JavaScript字符串。
    • XML(application/xml):Application/XML类型的XML字符串。
    • XML(text/xml):TEXT/XML类型的XML字符串。
    • HTML(text/html):HTML字符串。
    自定义 不支持multipart、video、image三种类型。

示例

某图书系统刚上线时,仅初始账号(name=test,password=123456)可以访问。若需对该系统进行压测,则需使用定义Body来指定压测请求。定义Body示例如下所示。

  • x-www-form-urlencoded类型

    • 以键值对形式输入:

      sc_config_body
    • 单击Body定义页签右上角编辑文本框,可切换为文本形式,最多可输入65535个字符。格式如下:

      name=test&passwd=123456&itemid=2                  
  • JSON(Application/JSON)类型

    {"code":200,"data":{"items":[{"id":"123","name":"yaozhuang"},{"id":"456","name":"fuzhuang"}]},"requestId":"Cf2HJKEf-197B-JK47-79E9-FA82BH64KA40","successResponse":false}
    sc_config_body1.png
  • 文本TEXT(TEXT/Plain)类型

    <?xml version="1.0"?><resource><id>123</id><params><name><value>test</value></name></params></resource>
    sc_config_body2.png