Beanshell断言

夙愿已清 提交于 2019-12-09 16:39:11

 BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性。

有以下五个组件:
• Beanshell Sampler
• Beanshell PreProcessor
• Beanshell PostProcessor
• Beanshell Assertion
• __Beanshell Function
————————————————

 

常用对象

1、vars:实际引用Jmeter线程的局部变量,连通Jmeter和beanshell
vars.get(String key)//获取字符串变量值
vars.put(String key,String value)//存储value到变量key

vars.putObject("object_name", Object);//保存对象(包括List, Map, closure之类)
vars.getObject("OBJECT_NAME");//读取对象

2、log:写入信息到日志中
log.info("")

3、prev:获取前一个sample的响应
prev.getResponseDataAsString():以字符串形式获取响应信息
prev.getResponseCode():获取状态码

4、props:HashTable对象,可以跨线程组使用
props.put("some_variable',vars.get("some_variable"))

常用脚本

import org.json.*;
String response = prev.getResponseDataAsString();//获取前一个sample的响应
//log.info("response的值:" + response);//将返回值转换为json对象
JSONObject responseJson = new JSONObject(response);
JSONObject dataObj= responseJson.getJSONObject("data");//获取data对象
JSONArray answersArr= dataObj.getJSONArray("answers");//获取answers数组

 

Failure=true;//标记该断言失败 
FailureMessage="内容检查失败";//在log中输出失败原因

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!