用户可以在jmeter- “beanShell断言”中自定义断言。自由灵活的用脚本实现自己的断言  
beanShell断言接口介绍  
在beanShell中直接可以调用的变量,无需加前缀。  
1.log 打印日志 log.info(“在控制台打印日志”);  
2.SampleResult 获取SampleResult对象,可以通过这个对象获取想要的信息  
3.Response 获取Response对象,可以通过这个对象获取对应的信息  
4.Failure 查看接口调用是否成功,如果返回false是成功的,true是失败的  
5.FailureMessage 失败信息,没有设置的时候失败信息是空的。可以set这个信息  
6.ResponseData 获取 response body,类型是byte[]  
7.ResponseCode 返回接口code,成功是200  
8.ResponseMessage 获取msg,成功是OK  
9.ResponseHeaders 获取接口服务端返回的头部信息  
10.RequestHeaders 获取客户端请求的头部信息  
11.SampleLabel 获取接口请求的名称  
12.SamplerData 获取请求的url和body  
13.ctx 代表上下文信息,可以直接使用  
14.vars 可以直接调用,将获取的数据变成jmeter变量(put),也可以获取用户自定义的变量(get)  
eg:  
1.在http sample下添加一个beanShell断言  
2.编写script  
import org.apache.jmeter.assertions;  
import org.apache.jmeter.samplers.SampleResult;  
import org.apache.jmeter.assertions.AssertionResult;  
import org.json.*;

String response_data = prev.getResponseDataAsString();//获取接口返回的response数据  
JSONObject data_obj = new JSONObject(response_data);//转换成json  
//判断code是否等于0 如果等于0 再取里面的字段  
String code = data_obj.get(“code”);  
if(code.equals(“0”))  
{  
String user_name = data_obj.get(“data”).get(“user”).get(“userName”).toString();  
//这里的my_name 是用户自定义的变量或者之前的接口返回获取的  
if(user_name.equals(${my_name})){  
Failure = false; //设置成false 表示接口跑成功,在结果树中sample是绿色的  
//做后续动作  
…….  
}  
else{  
//做其他动作  
}  
}  
else  
{  
Failure = true;//直接判断失败,表示接口跑失败,在结果树中sample是红色的  
prev.setStopThread(true);//如果断言失败,后面的接口不需要再跑,直接暂停  
}

分类: JMeter

转载于:https://www.cnblogs.com/zgq123456/p/9817606.html

(jmeter内置可调用的变量)jmeter beanShell断言相关推荐

  1. python不允许使用关键字作为变量名、允许使用内置函数_【判断题】Python不允许使用关键字作为变量名,但是允许使用内置函数名作为变量名,不过这会改变函数名的含义,所以不建议这样做...

    [判断题]Python不允许使用关键字作为变量名,但是允许使用内置函数名作为变量名,不过这会改变函数名的含义,所以不建议这样做 更多相关问题 [单选,A2型题,A1/A2型题] <十四经发挥&g ...

  2. python不允许使用关键字作为变量名、允许使用内置函数_Python不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数名的含义。...

    Python不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数名的含义. 答:对 对于检查出的无效MAC帧,以太网负责重传. 答:× 哪一年开始中国成为世界第二大经济体? 答:2 ...

  3. python不允许使用关键字作为变量名_python函数变量_python不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数 - 云+社区 - 腾讯云...

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在python 中, ...

  4. 配置Android Studio内置jre的环境变量

    下载Android Studio时,包括jre.将这个jre配置过环境变量后,就可以在全局使用了.但是和官网安装jre的环境配置略有不同. 图一  jre官网下载,安装后的目录 图二  Android ...

  5. java自定义变量解析,Thymeleaf内置对象、定义变量、URL参数及标签自定义属性

    如标题所述,这篇文章主要讲述Thymeleaf中的内置对象(list解析.日期格式化.数字格式化等).定义变量.获取URL的参数和在页面标签中自定义属性的应用. 如果对Thymeleaf的基本使用.m ...

  6. 【网页支付】支付宝内置浏览器调用支付功能

    申明: 内容中的图片都消失了. 最近有这个需求,扫描二维码后打开一个网页,在网页中选择支付方式. 如果是微信打开,就调用微信的网页支付功能. 如果是支付宝打开,就调用支付宝的网页支付功能. 这篇讲解支 ...

  7. Jmeter内置函数功能(五)

    在企业微信接口创建会议室时. {"name":"18F-会议室","capacity":10,"city":" ...

  8. 内置h5 调用safari系统浏览器打开_开发教我做设计:移动端H5页面中的橡皮筋效果...

    什么是橡皮筋效果(Over Scroll)? 在浏览被H5与iOS客户端混合编程的页面时,由于Safari浏览器的特性,当H5页面滑动到页面顶部.页面底部的位置时,继续下拉/上拉H5网页会出现&quo ...

  9. 查看变量数据类型的python内置函数_查看变量类型的 Python 内置函数是 ________________ 。_微观经济学(合作办学)答案_学小易找答案...

    [多选题]维生素B2的食物来源 [判断题]生产中纱线细度间接指标的测试通常采用缕纱称重法. [判断题]在正常情况下,人体所需叶酸除从食物中摄取外,肠道也能部分合成,因此体内一般不缺 [简答题]试述体育 ...

最新文章

  1. VisualStudio 合并代码文件
  2. Windows Server 2012 RDS系列:虚拟桌面化(5)
  3. Spring(1)_Bean初始化_逻辑图
  4. 【sklearn学习】决策树、分类树、剪枝策略
  5. 集算器访问HTTP数据的代码示例
  6. SHELL test [ 命令用法
  7. 整理一些完全免费开放的API接口
  8. RepPoints(本质是可变形卷积DCN)再理解
  9. Ubuntu ssh 登陆问题
  10. 分布式架构中数据一致性常见的几个问题
  11. db2查最新值的前一天值_2019年1月珠海最新房价出炉!看看你家房子值多少钱!...
  12. iview关闭抽屉弹层时清空Select弹框高亮样式
  13. JSP 语法2 都在百分号里面: 5.@符号加JSP三种指令标签 6
  14. (01)OpenGL es中只在指定区域渲染view
  15. OKR教练:OKR评分,你可以这样做。
  16. 在 sysservers 中找不到服务器,在 sys.servers 中找不到服务器的解决办法,自己解决的...
  17. 南方科技大学计算机唐博,唐博 - 教师个人主页 - 南方科技大学
  18. java拆分excel_apache poi拆分excel表格
  19. 用html代码制作一个表情图片,canvas绘制一个常用的emoji表情
  20. 【Vue如何让v-show也有动画效果】

热门文章

  1. java 创建string对象机制 字符串缓冲池 字符串拼接机制 字符串中intern()方法...
  2. 排序的几种方法 oc
  3. Jqurey学习笔记---3、jQuery 选择器
  4. HelloWorld CMake Demo 03:CMake中构建静态库与动态库及其使用
  5. MVC中使用 事物
  6. 双非二本的2019春招Java岗面试心得
  7. 为你的AliOS Things应用增加自定义cli命令
  8. 前端性能优化 -- 从 10 多秒到 1.05 秒
  9. 大数据挖掘在销售管理中的应用价值
  10. tomcat手动发布