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
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理