JMeter—断言

Posted wuyazi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JMeter—断言相关的知识,希望对你有一定的参考价值。

参考《全栈性能测试修炼宝典JMeter实战》第六章 JMeter 元件详解中第六节断言
断言用来对服务器的响应数据做验证,常用的断言是响应断言,支持正则表达式。


一、BeanShell Assertion
  用来访问JMeter的属性:
    log对象,可以利用此对象写日志
    SampleResult对象,从中获取响应数据、响应码等信息,只读
    Respose对象,获取响应数据,只读
    Failure,用来设置断言成功与否,Boolean类型
    FailureMessage,用来设置失败信息
    ResponseData对象,湖区响应数据
    ResponseCode,响应码
    ResponseMessage,响应信息
    ResponseHeaders,响应投信息
    RequestHeaders,请求头信息
    SampleLabel,取样器Label信息
    SamplerData,发送给服务器的数据
    Ctx (JMeterContext),JMeter上下文信息,从中可以获取线程数、线程号等信息
    Vars(JMeterVariables),获取JMeter中定义的变量,或者设置变量
   (JMeterPoperties),获取JMeter中的属性,或者设置属性
  其他几个方法:
    getResponseDataAsString:从SampleResult获取响应数据
    getResponseCode:从SampleResult获取响应消息
    getResponseMessage:从SampleResult获取响应消息


二、Compare Assertion
     比较断言,用来比较两次取样结果,支持正则表达式过滤。一般不建议使用,因为会消耗较多的资源,常用来调试。Compare Assertion与Cpmparison    Assertion Visualizer结合使用,前者进行设置,后者进行断言结果显示。


三、html Assertion
  HTML断言可以对HTML代码内容进行断言,支持XHTML和XML。
  在HTML断言中利用JTidy来解析HTML代码,JTidy是HTML Tidy的Java实现版本,提供了HTML的语法检查器。JTidy可以用来清除格式不好喝不对的HTML,还提供对整个HTML的DOM分析。


四、Size Assertion
  验证响应数据Size大小,主要参数说明:
    Apply to:断言应用范围
    Main sample and sub-samples:断言部分包括主Sample与子Sample
    Main sample only:断言部分仅仅是主Sample
    Sub-samples only:断言部分仅仅是子sample
    JMeter Variable:断言部分是JMeter变量
    Response Size Field to Test:那部分响应域参与断言
    Full Response:全部响应信息
    Response Headers:响应头信息,比如Http协议的头信息
    Response Body:响应主体内容部分,比如http协议HTML代码中的Body部分
    响应代码:响应代码
    响应信息:响应信息
    Size to Assert:断言时Size的阈值设置


五、XML Schema Assertion
  XML Schema,可扩展标记语言架构师以可扩展标记语言(标准通用标记语言的子集)为基础的,它用于可替代文档类型定义,一份XML schema文件描述了可扩展标记语言文档的结构。作用是定义一份XML文档的合法组建群,就像文档类型定义的作用一样,一份XML Schema定义:
    可以出现在文档里的元素
    可以出现在文档里的属性
    哪些元素是子元素
    子元素的顺序
    子元素的数量
    一个元素是否能包含文本,或应该是空的
    元素和属性的数据类型
    元素和属性的默认值和固定值


六、XML Assertion
  用来验证响应数据是正确的XML格式。


七、XPath Assertion
  对返回的XML格式信息进行断言


八、Duration Assertion
  持续时间断言,验证取样器运行测试消耗掉的时间,可以针对取样器与子取样器,时间单位是毫秒


九、响应断言
  判断返回内容中内容

十、其他断言元件
  SMIME Assertion
    对加密和签名的邮件进行断言
 

  MD5Hex
    对返回的MD5结果进行断言,使用简单,直接跳入MD5值

  JSR223断言
    规范请求,是指向JCP提出心中一个标准化技术规范的正式请求

 

以上是关于JMeter—断言的主要内容,如果未能解决你的问题,请参考以下文章

jmeter断言为整数怎么表达

Jmeter 02 Jmeter断言之响应断言

JMeter学习(十四)jmeter_断言使用

JMeter学习-007-JMeter 断言实例之一 - 响应断言JMeter学习-004-WEB脚本入门实战

JMeter—断言

第六篇:JMeter 断言