HTTP节点配置中包含基本请求信息、请求Header、请求Body、设置出参和检查点(断言)等。广泛用于指定HTTP协议的测试请求场景,以及您需要结合出参从响应中提取内容,或者您需要结合检查点从业务维度判断响应是否符合预期的场景。
使用限制
HTTP协议版本
PTS支持HTTP1.1、HTTP2协议,在您实际调试或启动压测时,PTS压测引擎会自动与服务端协商协议版本。若您的服务端支持HTTP2协议,PTS会默认优先使用HTTP2协议与服务端交互,否则PTS会使用HTTP1.1协议与服务端交互,因此您在配置场景时无需关注使用的HTTP协议版本。
HTTP请求Header限制
根据HTTP2 RFC协议标准,您在使用HTTP2协议的请求Header时,可能会存在部分请求Header请求异常的情况。若您在API调试后出现提示ProtocolException:*** is illegal for HTTP/2 messages
,此时您需要在请求Header配置中删除***
对应的Header。
如下所示,为您列举出无效的HTTP2 Header,不区分大小写。
Connection
Keep-Alive
Proxy-Connection
Transfer-Encoding
Host
Upgrade
请求超时时间
请求超时时间对应实际请求发送过程中以下两个阶段的超时时间,其中任一阶段超时都将会导致该请求超时。
发送请求后到第一次接收到响应数据包的时间
任意两个连续响应数据包之间的时间
任意两个连续响应数据包之间的时间超时,即socketTimeOut。指客户端和服务端进行数据交互的时间,若两个连续数据包之间的时间大于该时间则认为超时,并非指交互的整体时间。例如,设置10秒超时(客户端和服务端进行数据交互的时间),若每隔8秒传输一次数据(两个连续数据包之间的时间),传输10次,那么交互的整体时间为80秒,这样是不超时的。若每隔12秒传输一次数据(即任意两个连续数据包之间的时间超过了10秒),则为超时。
基本请求信息
HTTP压测界面基本请求信息一般包含API名称、压测URL、请求方式等信息。
定制请求信息
若需指定特殊请求来进行压测,可以通过定义Header来实现。
若需进一步指定特殊请求来进行压测,或定义Header不能满足您的压测需求时,可以通过定义Body来实现。
在实际压测场景中,经常使用出参功能从响应中提取内容以便从业务维度判断请求是否成功。
在实际压测场景中,经常使用检查点功能来从业务维度判断请求是否成功。