jmete 学习 --元件详解之断言

断言组件用来对服务器的响应数据做验证,常用的断言是响应断言,其支持正则表达式。本篇我们来介绍一些常用的断言。

1. BeanShell Assertion

  BeanShell 作为脚本语言能够方便的调用java 类,也可以访问Jmeter 的诸多属性,具体有:

    log对象,可以利用此来写对象日志.

    SampleResult对象,可以从中获取响应数据,响应吗等信息,只读.

    Respons对象,获取响应数据,只读。

    Failure,用来设置断言成功与否,Boolean类型。

    FailureMessage,用来设置失败信息。

    ResponseData对象,获取响应数据。

    ResponseCode, 响应码。

    Respnosemessage,响应信息。

    ResponseHeaders,响应头信息。

    RequestHeaders,请求头信息。

    SampleLable,取样器Lable信息。

    SampleData,发送给服务器的数据。

  我们所需的断言元素基本在以上方法中可以找到,这样我们就可以在响应断言不能进行判断的时候运用到了。下面的一个示例

  用log.error() 来输出 RequestHeaders 信息。也可以用 SampleResult.getResponseCode() 方法来获取返回代码。SampleResult的几个常用方法:getResponseDataAsString:从SampleResult获取响应数据。

2.Compare Assertion

  比较单元,用来比较两次取样结果,支持正则表达式过滤,但会消耗较多资源,所以不建议使用,本篇也不列出来了。

3.HTML Assertion

  HTML 断言可以对html 代码内容进行断言,也支持 XHTML ,XML,一般可以用响应断言代替,用的不多。

4.Size Assertion

  该元件验证响应数据Size大小,作用范围有主Sample  与 子 Sample。

  Apply to:断言应用范围。

    Main sample and sub-samples: 断言部分包括主sample 和 子 sample。

    Main sample only: 断言部仅仅是主 sample。

    Sub-samples only:断言部仅仅是子 sample。

    JMeter Variable:断言部分是jmeter 变量

  Response Size Fileld to Test:哪部分响应域参与断言。

    Full Response:全部响应消息。

    Response Headers:响应头消息。

    Response Body:响应主题内容部分。

5.Duration Assertion

  持续时间断言,验证去勇气运行测试消耗掉的时间,可以针对主取样器和子取样器。单位是毫秒。

    

    

 

    

 

posted @ 2017-06-19 22:54  大愚者  阅读(339)  评论(0编辑  收藏  举报