使用PTS压测时,若需指定特殊请求来进行压测,可以通过定义Header来实现。本文介绍如何在场景配置中定义Header。
前提条件
完成API基本信息配置,具体操作,请参见基本请求信息。
背景信息
在实际压测场景中,经常需要特定请求来进行压测,例如在压测某网页登录场景时,需要指定鉴权通过的请求来进行压测。使用PTS发起的压测均为HTTP协议的请求,在进行场景配置时,通过定义Header的Key和Value来指定特殊的访问请求。若需更精确地指定请求,可以通过定义Body来实现,具体操作,请参见Body。
对API Header的定义,可以通过以下三种方式,使定义在不同范围内生效:
设置单个API Header:该Header仅对当前API生效。
设置串联链路Header:压测时,该Header将自动添加到当前串联链路所有API中。
设置全局Header:压测时,该Header将自动添加到压测全场景所有API中。
若通过以上方式设置的Header的Key相同,则范围小的Header定义生效。
若通过以上方式设置的Header的Key均不相同,则三种Header定义均生效。
设置单个API Header
若为单个压测请求定义Header信息,需在每个API的Header定义页签下编辑Key和Value。
登录PTS控制台,在左侧导航栏选择 ,然后单击PTS压测。
在场景配置页签中,单击API右侧的图标。然后在展开区域单击Header定义页签,设置Header定义的相关参数。
参数
说明
Value
可以填写参数化的表达式。
函数、字符串的组合嵌套等更高级的参数编写方法,请参见系统函数及字符串如何组合嵌套使用?。
Key
PTS会根据填入的信息模糊匹配通用的HTTP Request Header,帮助您快速选择目标Header。
可选:单击Header定义页签右上角文本编辑,可切换为文本形式,查看已输入的Key和Value。您也可以在文本编辑形式下,批量写入多个Header。示例如下:
token : 123abc Cookie : session=12345
说明Content-type需要在Body定义页签进行设置。
设置串联链路Header
若某串联链路中的多个压测API需要同一个Header,可以通过设置串联链路Header的方式实现Header批量添加。
例如:在线选课业务中需要区分一年级学生、二年级学生。若需压测该选课业务,则需为一年级、二年级学生分别创建串联链路并设置串联链路Header,以区分选课学生类型。
设置串联链路Header操作步骤如下:
在场景配置页签添加指令右侧的下拉框中选择链路Header。
单击串联链路Header行右侧的图标,然后在展开区域设置Header的name和Value。
参数
说明
Value
可以填写参数化的表达式。
函数、字符串的组合嵌套等更高级的参数编写方法,请参见系统函数及字符串如何组合嵌套使用?。
name
PTS会根据填入的信息模糊匹配通用的HTTP Request Header,帮助您快速选择目标Header。
可选:单击Header页签右上角文本编辑,可切换为文本形式,查看已输入name和Value。您也可以在文本编辑形式下,批量写入多个Header。示例如下:
Grade : 1 Cookie : abc
说明Content-type需要在Body定义页签进行设置。