jmeter脚本开发-BeanShell Sampler与Debug Sampler
BeanShell支持java对象的调用,所以可直接通过BeanShell来调用java接口程序。
BeanShell调用java接口例子
1、先编写两个简单的java类
创建java简单工程,并创建BeanUtil接口和它的实现类BeanShellEg,代码如图

package com.seling.test;
public interface BeanUtil {
public String getUserName();
public String getAddress();
public int mul(int i);
}

package com.seling.test;
public class BeanShellEg implements BeanUtil{
private String userName;
private String address;
public BeanShellEg(String name){
this.userName=name;
}
public BeanShellEg(String name,String address){
this.userName=name;
this.address=address;
}
public String getUserName(){
return userName;
}
public void setUserName(String userName){
this.userName=userName;
}
public String getAddress(){
return address;
}
public void setAddress(String address){
this.address=address;
}
public int mul(int i){
return i*i;
}
}
2、在IntelliJ IDEA的Project structure-Artifacts配置打包为jar,并在Build-Build Project
(1)Project structure-Artifacts

(2)一直点OK即可

(3)Build-Build Project ,构建项目

(4)打开步骤(2)的D:\work\jmetertest\out\artifacts\jmetertest_jar,拷贝jmetertest.jar到jmeter的D:\apache-jmeter-3.2\lib\ext下


3、BeanShell脚本编写
创建jmeter线程组,依次新增测试计划、BeanShell Sampler、Java请求、Debug Sampler、察看结果树
(1)测试计划,导入引用包

(2)配置BeanShell Sampler
在BeanShell Sampler中直接实例化BeanShellEg类,并在参数中传入‘seling china’

import com.seling.test.BeanUtil;
import com.seling.test.BeanShellEg;
BeanUtil bu=new BeanShellEg(bsh.args[0],bsh.args[1]);
log.error(bu.getUserName());
log.error(bu.getAddress());
vars.put("userName",bu.getUserName());
vars.put("address",bu.getAddress());
(3)Java请求,Label填写为${userName}

(4)Debug Sampler默认即可

(5)点击
运行,在察看结果树看到java请求的标签名字取到了${userName}=seling

(6)察看Debug Sampler实例,
address=china
userName=seling

到此已经学习了一个简单的实例,你学会了吗?
jmeter脚本开发-BeanShell Sampler与Debug Sampler的更多相关文章
- Jmeter+Ant+Jenkins接口自动化测试(二)_测试方案设计及jmeter脚本开发
前言 根据之前部署好的测试环境,进行接口自动化测试的方案设计及Jmeter脚本开发.测试方案设计过程中采用了数据分离和对象分离等思路,因此直接通过特定的测试用例文档来驱动整个自动化接口测试的执行,相关 ...
- jmeter(十九)调试工具Debug Sampler
一.Debug Sampler介绍: 使用Jmeter开发脚本时,难免需要调试,这时可以使用Jmeter的Debug Sampler,它有三个选项:JMeter properties,JMeter v ...
- 性能测试学习之路 (四)jmeter 脚本开发实战(JDBC &JMS &接口脚本 & 轻量级接口自动化测试框架)
1.业务级脚本开发 登录脚本->思路:在线程组下新建两个HTTP请求,一个是完成访问登录页,一个是完成登录的数据提交. 步骤如下: 1) 访问登录页 2) 提交登录数据的HTTP PS:对于 ...
- JMeter脚本开发
什么是jmeter脚本 用户操作系统的动作流程 用户操作系统的请求 类似演戏的剧本 怎么快速开发漂亮的jmeter脚本 准确 快速 漂亮,脚本逻辑清晰,维护性高 脚本开发方案 代理 http代理服务器 ...
- 二、Jmeter脚本开发
目录 1.Jmeter协议录制 1.Jmeter协议录制 1.1 dboy进行录制 badboy下载地址:http://www.badboy.com.au/download/add badboy是一个 ...
- Jmeter 03 Jmeter脚本开发
JMeter 工作区介绍 JMeter Http 协议录制 JMeter 脚本调测 JMeter 关联 JMeter 参数化 JMeter 检查点 JMeter 事务 JMeter 集合点 JMete ...
- JMeter 脚本开发(五)
一.JMeter 元件运行顺序 执行顺序逻辑如下: 1.配置元件(如果存在) 2.前置处理器(如果存在) 3.定时器(如果存在) 4.取样器(如果存在) 5.后置处理器(如果存在且取样器的结果不为空) ...
- 四jmeter脚本开发
4.1工作区介绍 4.2http协议录制 a.使用badboy进行录制(目前公司测试系统使用badboy界面不友好,暂时不用,之后再补充) b.jmeter代理服务器进行录制 (1)浏览器代理配置(以 ...
- 记录一次jmeter脚本开发缺少utf-8惹的祸
背景:需要模拟余额发放,并进行大批量的发放,我就想到了jmeter.就是几个简单的接口,我想很简单,就上手,没想到最后鸡鸡,害我查了半天原因. 操作:我编写的脚本: 请求默认值的内容编码我也是为空,当 ...
随机推荐
- android9.0请求异常
抛出异常:CLEARTEXT communication to not permitted by network security policy android 9开始默认不能使用http 1.在re ...
- Proxy(2016山东省省赛C)(最短路)(spfa)
问题 C: Proxy 时间限制: 2 Sec 内存限制: 128 MB提交: 17 解决: 5[提交][状态][讨论版] 题目描述 Because of the GFW (Great Firew ...
- luogu P1064 金明的预算方案
题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”.今 ...
- [CTSC2017]游戏(Bayes定理,线段树)
传送门:http://uoj.ac/problem/299 题目良心给了Bayes定理,但对于我这种数学渣来说并没有什么用. 先大概讲下相关数学内容: 1.定义:$P(X)$ 表示事件$X$发生的概率 ...
- small test on 5.30 morning T3
经典的等价类计数问题,我们设 f(x) 为环长为 x 的时候的花环种类,那么答案显然等于 1/n * Σf( gcd (i,n) * [gcd(i,n)!=1] * [i>=0&&a ...
- URL Schemes(转载)
URL Schemes 应用在 iOS 上已经很久了.对于使用者来说,在沙盒机制下的 iOS 中,如果想做到一定程度上的自动化就不可避免地要用到 URL Schemes.但因为 URL Schemes ...
- Android中将Bitmap转换成单色的Bmp图片
添加权限 :
- ActiveMQ实战-集群
原文:http://blog.csdn.net/lifetragedy/article/details/51869032 ActiveMQ的集群 内嵌代理所引发的问题: 消息过载 管理混乱 如何解决这 ...
- 大数据的开始:安装hadoop
为实现全栈,从今天开始研究Hadoop,个人体会是成为某方面的专家需要从三个方面着手 系统化的知识(需要看书或者比较系统的培训) 碎片化的知识(需要根据关注点具体的深入的了解) 经验的积累(需要遇到问 ...
- jquery修改ajax的header的字段origin方法,均被浏览器拒绝
一.方法一 $.ajax({ headers: { Origin: "http://targetIP" } }); 二.方法二 $.ajax({ beforeSend: funct ...