在JMeter响应断言的自定义失败消息中访问请求与响应头
在JMeter响应断言中访问请求/响应头并自定义失败消息
你可以通过JMeter内置的变量和函数,直接在响应断言的「Failure Message」区域引用请求、响应头信息,具体方法如下:
1. 获取请求头信息
- 单个指定请求头:使用
${__sampler.getRequestHeaders().getHeader("HeaderName")},将HeaderName替换为你需要的请求头字段名(比如关联ID对应的头名称) - 全部请求头:直接使用
${__sampler.getRequestHeaders()},会输出所有请求头的完整内容
2. 获取响应头信息
- 单个指定响应头:使用
${__sampler.getResponseHeaders().getHeader("HeaderName")},替换HeaderName为目标响应头字段名 - 全部响应头:使用
${__sampler.getResponseHeaders()},输出所有响应头的完整内容
3. 配置自定义失败消息
在响应断言的「Failure Message」输入框中,将上述变量与自定义提示文本结合即可,示例写法:
断言失败!响应码不符合预期。请求关联ID:${__sampler.getRequestHeaders().getHeader("X-Correlation-ID")},响应头详情:${__sampler.getResponseHeaders()}
兼容低版本JMeter的写法
如果你的JMeter版本较低,上述函数无法生效,可以改用BeanShell写法:
- 获取单个请求头:
${__BeanShell(vars.get("sampler").getRequestHeaders().getHeader("X-Correlation-ID"))} - 获取单个响应头:
${__BeanShell(vars.get("sampler").getResponseHeaders().getHeader("X-Correlation-ID"))}
内容的提问来源于stack exchange,提问作者Dileep17
相关产品推荐
相关产品推荐

