jemter使用beanshell的几种方法

因工作需要,需在jmeter中,通过jdbc取出相应id,然后将id存入文件中,查询网上的资料,基本是通过beanshell来实现:
1.操作变量
2.操作属性
3.自定义函数
4.引用外部java文件
5.引用外部class文件
6.引用外部Jar包
7.其它用法(接受参数, log等)
(—–引用自http://www.cnblogs.com/puresoul/p/4949889.html

本文主要介绍我最近掌握的几种方法:
- 导入jar、使用java请求
- 直接写函数
- 导入java文件
- 导入class文件

导入jar、使用java请求

导入jar需将方法导出为jar包,并将其复制到jmeter下的lib\ext中,具体方法可百度

以下是导入jar时需要注意的(我使用过程中遇到的注意点)
1.在测试计划中添加包地址

2.beanshell中,需导入该包
这里写图片描述

3.java类中,继承AbstractJavaSamplerClient类或实现JavaSamplerClient接口的测试类的类名都会出现在类名称后面的下拉框中,JaveTest和SleepTest为jmeter默认实现的2个java请求Sampler。

直接写函数

写函数时,需注意:
1.函数中调用jmeter参数时,需加引号
2.最后需调用一下需运行的方法
这里写图片描述

导入java文件

导入java时,网上查了很多资料,导入java文件时,地址是双斜杠间隔,这里写图片描述
但试了不行,后来试了反斜杠“/”,可以了;
这里写图片描述
我这个脚本,因为有for循环,运行时,第一个循环是通的,但后面的循环提示wr是已存在变量,还没找到解决问题的方法,忘大神请教!
这里写图片描述

导入class文件

导入class文件类似java文件,唯一不同的是,
1.source写地址时,仅需写到地址盘,文件无需放在跟目录,仅需要在地址盘中即可
2.需import类的名字
这里写图片描述
此处java和class内容一样,我原本以为运行导入class文件也会和导入java的文件出现一样的问题,但是导入class文件却全部成功了,不知道为啥,望大神指导。

总结

1.在BeenShell中引用文件路径时不要使用”\”,否者会转义成ASCII码,当你需要表示完整的路径时应该如此表示E:/ZipUtil.java,而不是像java中引用E:\ZipUtil.java,这样就会将Z分别转码成90然后jmeter控制台就会报错(这个是在网上查的说法,在写脚本的时候,很多文章中地址都是双斜杠”\”,但实际运行时却运行不通,后来无意间修改为”\\”,尽然成功了,看jmeter运行解析后是“\”的地址,想着是不是解析的时候是以”\”解析,会去掉一个斜杠的。后来发现反斜杠”/”也是可以成功的)
这里写图片描述
应使用了“CSDN-markdown编辑器”,双斜杠会去掉一个斜杠,因此这截图显示,以防表达有误。

2.引用外部参数时,引号是必须,在BeenShell中引用外部参数需要以String类型的方式引用。但在导jar包和java请求中引用参数时,是不需要引号的,默认为String类型的

本人现在是jmeter菜鸟一枚,文章中若有错误,欢迎大家交流指正。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值