[转载] jmeter Bean Shell的使用
Jmeter有哪些Bean Shell
定时器: BeanShell Timer
前置处理器:BeanShell PreProcessor
采样器: BeanShell Sampler
后置处理器:BeanShell PostProcessor
断言: BeanShell断言
监听器: BeanShell Listener
下面先讲一讲 采样器:BeanShell Sampler的用法

在BeanShell Sampler里面写入vars.get和vars.put

查看结果树:

在BeanShell Sampler里面添加方法

查看结果树

引入java文件:

在BeanShell Sampler里面引入java文件

查看结果树

引入class文件:

查看结果树

给自定义的变量赋值

Bean Shell的脚本将test的值传给us

HTTP Request 使用参数化引用us的值

查看结果树:


BeanShell PostProcessor提取json数据
需求:提取sample返回json数据中所有name字段值,返回的json格式如下:
{“body”:{“apps”:[{“name”:”111”},{“name”:”222”}]}}
jmeter中添加后置处理器BeanShell PostProcessor

import org.json.*; String response_data = prev.getResponseDataAsString();
JSONObject data_obj = new JSONObject(response_data);
String apps_str = data_obj.get("body").get("apps").toString();
JSONArray apps_array = new JSONArray(apps_str);
String[] result = new String[apps_array.length()];
for(int i=0;i<apps_array.length();i++){
JSONObject app_obj = new JSONObject(apps_array.get(i).toString());
String name = app_obj.get("name").toString();
result[i] = name;
}
vars.put("result", Arrays.toString(result));

jmeter BeanShell断言-----两个变量之间的断言对比
在jmeter的中,断言没法对两个变量的进行对比后判断,只能使用Bean Shell断言来进行,总是有人来问怎么写呢。这里写一个简单的实例吧。
需求:
获取某个用户对应的设备个数接口与数据库查询的个数结果进行对比
Bean Shell断言解决方案:
获取某个用户对应的设备个数接口这个普通的Http接口,这里就不就列出了
与Oracle数据库的查询,如下图
先建立JDBC连接配置,进行JDBC查询,然后用正则提取器



再建立Bean Shell断言,如下

这里介绍下。${streamid_matchNr}是jmeter正则个数的统计
if (!"${streamid_matchNr}".equals("${res_1}"))
表示${streamid_matchNr}与${res_1}不相等则运行下面的代码。
转载:
https://www.cnblogs.com/111testing/p/6411135.html
[转载] jmeter Bean Shell的使用的更多相关文章
- jmeter Bean Shell的使用(一)
未经作者允许,禁止转载!!! Jmeter有哪些Bean Shell 定时器: BeanShell Timer 前置处理器:BeanShell PreProcessor 采样器: BeanShell ...
- Jmeter ----Bean shell使用
一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...
- jmeter Bean Shell的使用(二)
BeanShell的用法 在此介绍下BeanShell PreProcessor的用法,其它的beahshell可以类推.在此我们使用beahshell调用自己写的工具类,工具类实现了密码的加.解密功 ...
- JMeter Bean Shell
1.什么是bean Shell BeanShell是一种脚本语言,一种完全符合java语法的java脚本语言,并且又拥有自己的一些语法和方法,beanShell是一种松散类型的脚本语言(这点和JS类似 ...
- 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使用(二)(转载)
转载地址:https://www.cnblogs.com/puresoul/p/4949889.html 上一篇Jmeter之Bean shell使用(一)简单介绍了下Jmeter中的Bean she ...
- 【转载】Jmeter之Bean shell
一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...
- 【转载】Jmeter之Bean shell使用(二)
Jmeter之Bean shell使用(二) 原博文地址为:https://www.cnblogs.com/puresoul/p/4949889.html 其中需要注意的是——三.自定义函数中Bean ...
随机推荐
- 场景图(Scene Graph)
场景(Scene) · GitBook https://docs.cocos.com/cocos2d-x/manual/zh/basic_concepts/scene.html 场景图(Scene G ...
- iptables 配置 场景1
这样配置完成后,没法完成本地回环,需要对lo网卡进行配置 本地报文无法发出,继续添加规则
- Vue 事件结合双向数据绑定实现todolist 待办事项 已经完成 和进行中
<template> <div id="app"> <input type="text" v-model='todo' @keyd ...
- javascript取模运算是怎么算的?其实是取余数
问到是否整除,这里记录下取模 比如120分钟是不是整点?120%60 === 0 为整点 javascript取模运算是一个表达式的值除以另一个表达式的值,并返回余数. 取模在js里就是取余数的意思. ...
- 按钮显示隐藏div、input等
<script type="text/javascript"> function show() { var value = document.getElementByI ...
- 数据分析入门——numpy
一.什么是numpy Numpy提供了一个在Python中做科学计算的基础库,重在数值计算,主要用于处理多维数组(矩阵)的库.用来存储和处理大型矩阵,比Python自身的嵌套列表结构要高效的多.本身是 ...
- 全面系统Python3入门+进阶_汇总
https://coding.imooc.com/class/136.html#Anchor 全面系统Python3入门+进阶-1-1 导学 全面系统Python3入门+进阶-1-2 Python的特 ...
- 【JS】jquery展示JSON插件JSONView
JSONView介绍 jQuery插件,用于显示漂亮的JSON. 官网地址:https://plugins.jquery.com/jsonview/ git地址:https://github.com/ ...
- Linux记录-mysql参数优化
1.参数优化show variables like ''/etc/my.cnf[mysqld]Max_connections =1024 #请求的最大连接数back_log =1024 #mysql能 ...
- Oracle 自动生成的视图VM_NSO_1
作者:Jerry 有时候优化sql的时候,在执行计划中看到有VM_NSO_X的视图,在Oracle定义中,可以吧NSO理解为nested subquery optimizing,功能就是把in转换为j ...