Jmeter4.0---- jmeter中写入java代码_简单了解(15)

时间:2023-03-09 13:32:49
Jmeter4.0----  jmeter中写入java代码_简单了解(15)

1.说明

BeanShell:是一个小型嵌入式Java源代码解释器,具有对象脚本语言特性,能够动态地执行标准JAVA语法,并利用在JavaScript和Perl中常见的的松散类型、命令、闭包等通用脚本来对其进行拓展。BeanShell不仅仅可以通过运行其内部的脚本来处理Java应用程序,还可以在运行过程中动态执行你java应用程序执行java代码。因为BeanShell是用java写的,运行在同一个虚拟机的应用程序,因此可以*地引用对象脚本并返回结果。

Jmeter中的BeanShell主要有:定时器BeanShell Timer、前置处理器BeanShell PreProcessor、采样器BeanShell Sampler、后置处理器BeanShell PostProcessor、断言BeanShell、断言监听器BeanShell Listener。

此处运用了内置对象vars对变量进行存取操作:

·vars.get("name"):从jmeter中获得变量值

·vars.put("key","value"):数据存到jmeter变量中

(可参考该文档进行学习:https://www.jianshu.com/p/bc537d6acb3a

2.直接在jmeter中写java代码

第一步:添加 BeanShell Sampler 编写 java 代码

线程组(右键) => Sampler => BeanShell Sampler(可直接写入java代码)

Jmeter4.0----  jmeter中写入java代码_简单了解(15)

Jmeter4.0----  jmeter中写入java代码_简单了解(15)

第二步:添加 Debug Sampler 进行调试

控制器 => Sampler => Debug Sampler (调试)

Jmeter4.0----  jmeter中写入java代码_简单了解(15)

第三步:调用java代码中的数据

/ep/add.action?NAME=${name}&AGE=${age}

Jmeter4.0----  jmeter中写入java代码_简单了解(15)

3.导入 java 代码文件

说明:其中,引入java文件,不需要放到根目录,只是引用时文件路径需要使用双斜杠\\,格式为source("D:\\software\\workspace\\junit-test\\AddMethod.java");

source("D:\\software\\workspace\\junit-test\\AddMethod.java");//导入java文件
int addm = new AddMethod().add(5,8);//调用函数
vars.put("name","duoduo");//保存变量
vars.put("num",addm.toString());//保存变量
return "success";
return num;

Debug Sampler 结果:

name=duoduo
num=13

4.导入 class 文件

addClassPath("D:\\");
import com.AddMethod;//AddMethod是class文件的文件名,放到D盘比较深的一个目录里
int addm = new AddMethod().add(6,9);
vars.put("num",addm.toString());
vars.put("name","kaku");
log.info("test");
return "success";
return num;

Debug Sampler 结果:

name=kaku
num=15

5.jmeter使用自定义编写java代码

(可参考该文档进行学习:https://www.cnblogs.com/linglingyuese/articles/linglingyuese-two.html

备注:正常情况下,很少会在jmeter中写java代码,所以,仅做了解即可