jmeter学习(3)断言

1)响应断言   --可以作用于线程组或者请求jmeter响应断言接入java jmeter响应断言匹配规则_mob6454cc7c698b的技术博客_51CTO博客

响应文本】指返回的【响应数据】的文本信息response body。

响应代码】指Http响应码,如200、500等。

响应信息】指的是http的【取样器结果】中的response message。

响应头】指http【响应数据】的响应头信息response hearders。

请求头】指http【请求数据】的请求头信息request hearders。

请求数据】指http【请求数据】的请求头信息request body。

URL样本】指断言的当前请求的URL地址,与http【请求数据】的请求头信息request body中的值做对比是否一致。注意:如果有重定向包含重定向url。

文档(文本)】通过Apache Tika从各种的文档中提取的文本进行验证,包括响应文本,pdf、word等等各种格式。

忽略状态(Ignore Status)】 一个请求多项响应断言时,忽略某一项断言的响应结果,而继续下一项断言。

模式匹配规则

分为【包括】【匹配】【相等】【字符串】【否】【或者】
包括】响应的结果中包含指定的文本或者字段值,支持正则表达式。
匹配】完全匹配,期望值与实际结果必须完全一致,一般结合正则表达式使用。
相等】完全匹配,响应结果与指定的内容完全一致,不支持正则表达式。
字符串】返回结果,包含指定的字符串,不支持正则表达式。
】合并选择之后,断言结果true为false,false为true。
或者】当有多个断言时,只要有一个断言成功,那么最终结果就是成功的。

2)json断言  --可以作用于线程组或者请求

JSON断言也是测试工作中经常用到的一种断言方法,它只能针对响应结果是applicaton/json格式的请求进行断言

常量的断言

 3)beanshell 断言  --可以作用于线程组或者请求

BeanShell断言支持各种开发语言,本文介绍使用java编写断言,使用BeanShell断言的好处是可以自由发挥,比如当断言失败,提示预期结果、实际结果,或者失败时把结果输出到日志

Beanshell断言器添加了几个主要的内置对象的使用:
1、Failure:如果Failure=true;则声明断言失败
2、FailureMessage:可以自定义指定断言器的断言输出报告

String response = "";
String Str = "001000";   //预期结果,需要校验的字段
 
response = prev.getResponseDataAsString();    //获取当前请求响应结果
  
if(response == ""){  
    Failure = true;  
    FailureMessage =   "系统无响应,获取不到响应数据!";  
    //对比数据库内容和响应内容,私用euqals方法判断是否一致  
    }
else if(response.contains(Str) == false){  
        //把断言失败置为真   
        Failure = true;    
        String Msg = "\n系统返回响应结果与期望结果不一致!请排查是性能问题,还是程序代码问题";       		          FailureMessage = Msg + "\n" + "期望结果:\n" + Str + "\n" + "响应内容: \n" + response +"\n";   
        }

 注意:json、beanshell 断言成功出现无断言记录的情况,显示绿色应该就可以了

断言结果也可以在监听器,断言结果查看

JMeter中,可以使用响应断言来对接口的响应数据进行校验。根据引用\[3\]中的描述,可以选择以下几种断言模式来进行断言校验: 1. 包括:断言的内容可以是一个字符串或正则表达式,只要响应数据中包含该内容,断言就会通过。 2. 匹配:响应数据必须完全匹配断言的内容才能通过断言校验。 3. 相等:与匹配类似,响应数据必须完全等于断言的内容才能通过断言校验。 4. 字符串:与包括类似,但不支持正则表达式。 5. 否:断言结果取反,即断言结果为true时,实际结果为false,反之亦然。 6. 或者:多个断言存在时,只要有一个断言成功,整体断言结果就为成功。 根据你的描述,如果响应信息显示为空,但响应数据是有值的,可以选择使用响应文本断言模式。你可以将期望的响应文本作为断言的内容,比如"success",如果响应数据中包含该文本,断言就会通过。 另外,你也可以根据具体的需求选择其他断言模式,比如匹配或相等,来对响应数据进行校验。请根据实际情况选择合适的断言模式来进行断言校验。 #### 引用[.reference_title] - *1* *2* [JMeter学习笔记002-JMeter之响应断言](https://blog.csdn.net/qq_35316141/article/details/125863617)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [3.1 jmeter 响应断言](https://blog.csdn.net/qiushiqiushi/article/details/129292265)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值