Jmeter-断言
断言组件用来对服务器的响应数据做验证。
BeanShell Assertion
BeanShell断言,BeanShell作为脚本语言,可以很方便的调用JAVA类和Jmeter的属性
1)log对象,可以利用此对象写日志
2)SampleResult对象,从中可以获取响应数据、响应码等信息,只读。
3)Response对象,获取响应数据,只读
4)Failure,用来设置断言成功与否,Boolean类型
5)FailureMessage,用来设置失败信息
6)ResponseData对象,获取响应数据
7)ResponseCode,响应码
8)ResponseMessage,响应信息
9)ResponseHeaders,响应头信息
10)RequestHeaders,请求头信息
11)SampleLabel,取样器Label信息
12)SampleData,发送给服务器的数据
13)Ctx(JmeterContext),Jmeter上下文信息,从中可以获取线程数,线程号等信息
14)Vars(JmterVariables),获取Jmeter中定义的变量,或者设置变量
15)Props(JmeterProperties),获取Jmeter中的属性,或则设置属性
3,6,7,8,9,10,11,12都可以在SampleResult中获取
Compare Assertion
比较断言,用来比较两次取样结果,结果支持正则表达式过滤。
缺点:耗费资源较多,一般不建议使用
主要用处:一般用于调试,Compare Asertion要与Comparion Assertion Visualizer结合使用,前置进行设置,后者进行结果断言显示。
Size Assertion
验证响应数据Size的大小,它的范围有主Sample和子Sample。
名称:给添加的元件取名,可以为空
注释:可以为空
Apply to:断言应用范围
Main sample and sub-samples:断言部分包括主Sample与子Sample
Main sample only:断言部分仅仅是主Sample
Sub-sample only:断言部分仅仅是子Sample
Jmeter Variable:断言部分是Jmeter变量
Respose Size Field to Test:哪部分响应域参与断言
Full Response:全部响应信息
Response Headers:响应头信息,比如Http协议的头信息
Response Body:响应主题内容部分,比如Http协议html代码中的body部分
响应代码:响应代码,比如200,503
响应信息:响应信息,比如OK
Size to Assert:断言时的阈值设置
Duration Assertion
持续时间断言,验证取样器运行测试消耗的时间,可针对主取样器与子取样器,时间单位为毫秒。
如果实际耗时大于设置的断言时间,则断言结果失败。