12. Jmeter-断言

jmeter-断言介绍与使用

性能测试中较少用到断言。断言会增加脚本执行时间,但是接口测试中断言是必备的。什么是断言?其实就是功能测试中常说的预期结果和实际结果是否相等。

850206-20190923104714925-1639337528.png

  • 响应断言
  • JSON Assertion
  • Size Assertion
  • JSR223 Assertion
  • XPath Assertion
  • Compare Assertion
  • 断言持续时间
  • HTML Assertion
  • MD5Hex断言
  • SMIME Assertion
  • XML断言
  • XML Schema Assertion
  • BeanShell断言

响应断言

850206-20190923104723095-1159049135.png

见图知意。接口测试中较少用到。

JSON Assertion

850206-20190923104734079-1976433093.png

也算是见图知意吧。这里需要注意一下
Additionally assert value: 等于特定值
Match as regular expression:符合正则表达式

Size Assertion

850206-20190923104746013-1711487568.png

见图知意。。。

JSR223 Assertion

850206-20190923104801415-1498058569.png

JSR223 Assertion可以选择多种语言,如下图所示:
850206-20190923104812462-1296671409.png

笔者常用的是beanshell和JS。这里我们以beanshell举例。
JSR223 Assertion实例
850206-20190923104822030-1347179471.png
850206-20190923104828135-821660807.png
850206-20190923104836866-809467992.png

import org.json.*;

//获取上一个请求的返回值
String response = prev.getResponseDataAsString();
//将返回值转换为json
JSONObject responseJson = new JSONObject(response);
//获取responseMessage
String status = responseJson.get("status").toString();
String message = responseJson.getString("message");



if(!status.equals("0")) {
    Failure = true; 
    FailureMessage = "status错误";
}else{
    FailureMessage = "status正确";
    }

if(!message.equals("username or password error")) {
    Failure = true; 
    FailureMessage = "message错误";
}else{
    FailureMessage = "message错误";
    }

运行结果
850206-20190923104852568-1828478910.png

XPath Assertion

850206-20190923104902380-1757246008.png

可以参考11. Jmeter-后置处理器二中的XPath Extractor

Compare Assertion

850206-20190923104912538-1110543081.png

嗯。。用到正则了。暂时跳过。

断言持续时间

850206-20190923104921123-474117226.png

这个就比较好理解了。断言取样器运行测试消耗掉的时间,比如我们的持续时间填写10,实际时间如果是20s,那么就会断言失败。

HTML Assertion

850206-20190923104931907-79465801.png

MD5Hex断言

850206-20190923104939036-203308601.png

对返回的MD5进行断言,直接填入即可。

SMIME Assertion

850206-20190923104949862-2130004033.png

可以参考SMIME Assertion,用的不多。

XML断言

850206-20190923105001674-213984614.png

用来验证响应数据是正确的XML格式,不常用。

XML Schema Assertion

850206-20190923105014654-1100534351.png

BeanShell断言

可以参考JSR223 AssertionBeanShell断言也是我们常用的断言。

软件测试汪简书地址
软件测试汪博客地址

欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560

转载请注意出处,谢谢合作

转载于:https://www.cnblogs.com/suim1218/p/11571125.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值