若需进一步指定特殊请求来进行压测,或定义Header不能满足您的压测需求时,可以通过定义Body来实现。本文介绍如何定义Body及相关示例。
操作步骤
登录PTS控制台,在左侧导航栏选择 ,然后单击PTS压测。
在场景配置页签中串联链路模块右侧单击图标,并在展开区域配置基本信息。具体操作,请参见基本请求信息。
说明压测API的请求方式为POST、PUT或PATCH时才可以定义Body。
单击Body定义页签。
在Body定义页签中定义Body的内容。定义Body的内容取决于请求参数类型(Content-Type),参数类型分为x-www-form-urlencoded、raw或自定义三种。
参数
描述
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
以键值对形式输入:
单击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-FA*****4KA40","successResponse":false}
文本TEXT(TEXT/Plain)类型
<?xml version="1.0"?><resource><id>123</id><params><name><value>test</value></name></params></resource>