JMeter Bean Shell
1.什么是bean Shell
BeanShell是一种脚本语言,一种完全符合java语法的java脚本语言,并且又拥有自己的一些语法和方法,beanShell是一种松散类型的脚本语言(这点和JS类似)。
2.Bean Shell常用的内置变量
JMeter在它的bean shell中内置了一些变量,我们可以通过这些变量与JMeter交互:
1)log:写入信息到jmeter.log文件
使用方法如log.info("This is log info");
2)vars:操作jmeter变量,方便我们操作JMeter
常用方法:
a).vars.get(String key):从JMeter中获取变量。
b).vars.put(String key,String value):数据存在JMeter变量中。
更新信息可参考:org.apache.jmeter.threads.JMeterVariables。
3)props:操作JMeter属性,用来获取JMeter的属性
使用方法:
a).props.get("aa");
b).props.put("aa","test");
4)prev:获取当前页面的采样器返回的信息
常用方法:
a).getResponseDataAsString():获取响应信息。
b).getResponseCode():返回响应的code。
更新信息可参考:org.apache.jmeter.samplers.SampleResult
5)ctx:该变量引用了当前线程的上下文,使用方法可以参考:org.apache.jmeter.threads.JMeterContext
3.JMeter中Bean Shell断言实例
1)在http请求的子节点添加Bean Shell断言来判断响应的值,使用Failure来标识断言失败,使用FailureMessage来标识断言失败的原因:
//获取上一个请求的响应值
String response = prev.getResponseDataAsString();
//将响应值的字符串类型转换为JSONObject类型
JSONObject jsonObject = new JSONObject(response);
//获取responseMessage的值
String message = jsonObject.getString("responseMessage");
if(!message.equals("success")){
Failure = true;
FailureMessage = "message不等于success";
return;
}
String title = jsonObject.getJsonObject("data").getString("title");
if("".equals(title)){
Failure = true;
FailureMessage = "title为空";
return;
}
JMeter Bean Shell的更多相关文章
- Jmeter ----Bean shell使用
一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...
- jmeter Bean Shell的使用(一)
未经作者允许,禁止转载!!! Jmeter有哪些Bean Shell 定时器: BeanShell Timer 前置处理器:BeanShell PreProcessor 采样器: BeanShell ...
- jmeter Bean Shell的使用(二)
BeanShell的用法 在此介绍下BeanShell PreProcessor的用法,其它的beahshell可以类推.在此我们使用beahshell调用自己写的工具类,工具类实现了密码的加.解密功 ...
- [转载] jmeter Bean Shell的使用
Jmeter有哪些Bean Shell 定时器: BeanShell Timer 前置处理器:BeanShell PreProcessor 采样器: BeanShell Sampler 后置处理器:B ...
- jmeter bean shell断言加密的响应信息(加密接口测试二)
断言加密的响应信息 1.在http请求-->添加-->断言-->bean shell 断言 import com.changfu.EncryptAndDecryptInterface ...
- jmeter bean shell断言加密的响应信息
断言加密的响应信息 1.在http请求-->添加-->断言-->bean shell 断言 import com.changfu.EncryptAndDecryptInterface ...
- 转 Jmeter之Bean shell使用(二)
上一篇Jmeter之Bean shell使用(一)简单介绍了下Jmeter中的Bean shell,本文是对上文的一个补充,主要总结下常用的几种场景和方法,相信这些基本可以涵盖大部分的需求.本节内容如 ...
- 转 Jmeter之Bean shell使用(一)
一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...
- Jmeter之Bean shell使用(一)
一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...
随机推荐
- infos
C++文件流 iostream 提供了cin cout 分别用于从标准输入读取流和向标准输出写入流cout 标准输出 屏幕 输出写入fstream文件流 cin 从标准输入读取cout 向标准输入写入 ...
- 深度剖析collections模块
namedtuple OrderedDict deque tuple defaultdict Counter ChainMap
- android 侧滑菜单
就是用手一滑才出现,占手机半个多屏幕的菜单.为了美观和页面转跳,很多时候要用到. 实现的话就是使用官方的DrawerLayout,注意这个布局一定要是最顶层的布局. 在DrawerLayout里面直接 ...
- typedef struct与struct的区别
typedef struct与struct的区别 1. 基本解释 typedef为C语言的关键字,作用是为一种数据类型定义一个新名字.这里的数据类型包括内部数据类型(int,char等)和自定义的数据 ...
- 编译错误error: invalid&nbsp…
昨天遇到一个莫名其妙的编译错误,以前没有见过,而且代码流程看起来也没有太多的奇异之处.后来忍无可忍,百度了下,发现别人也有遇到这个错误的,他的解决方法是:少了"}". 嘿嘿,我开始 ...
- CSV Format
[CSV Format] The comma separated values format (CSV) has been used for exchanging and converting dat ...
- VS快捷键小收集
1. Ctrl-M-O 折叠所有方法 Ctrl-M-M 折叠或展开当前方法 Ctrl-M-L 展开所有方法 2. 行编辑(复制,剪切,删除,交换) 当你在光标停留行使用快捷键Ctrl ...
- resolve或reject之后还需要return吗
答案: 需要 今日碰到一个问题, 是我的同事发现的,如果不说的话可能一直没有注意到 这个代码 在reject 后还会执行, 但是谁也没有注意到, 但是不会报错, 因为当一个promise是resolv ...
- Lambda02 函数式接口
1 java8默认提供的函数式接口 1.1 Predicate /* * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rig ...
- Java 基于web service 暴露接口 供外部调用
package cn.zr.out.outinterface; import java.text.SimpleDateFormat; import java.util.Date; import jav ...