首页 > 代码库 > JMeter中BeanShell用法总结(一)
JMeter中BeanShell用法总结(一)
一、什么是Bean Shell
- BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法;
- BeanShell是一种松散类型的脚本语言(这点和JS类似);
- BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性,非常精简的解释器jar文件大小为175k。
- BeanShell执行标准Java语句和表达式,另外包括一些脚本命令和语法。
二、Jmeter有哪些Bean Shell
定时器: BeanShell Timer
前置处理器:BeanShell PreProcessor
采样器: BeanShell Sampler
后置处理器:BeanShell PostProcessor
断言: BeanShell断言
监听器: BeanShell Listener
三、BeanShell的用法
通过实例讲解BeanShell的用法
使用场景:手机号注册,登录,绑卡业务
实现随机生成不重复的手机号的两种方式:
1.注册接口参数:
merchant_id=00000001&bizcode=uums_user_register&mobile=13${__Random(000000000,999999999,Phone)}&password=888888
此种方式,是通过JMeter自带的Random函数,生成某个范围内的随机数,然后后面的登录业务,直接引用13${Phone}即可
登录接口:
merchant_id=00000001&bizcode=uums_login&login_type=104&login_account=13${Phone}&password=888888
方式2:
通过BeanShell实现:
String time = "${__time(,)}";int [] arr = {13,15,18,17};int index=(int)(Math.random()*arr.length);//产生0-(arr.length-1)的整数值,也是数组的索引int rand = arr[index];String time =time.substring(6,13);vars.put("Phone",rand+""+${__Random(0,9,RandNo1)}+""+time+""+${__Random(0,9,RandNo2)});//如果在测试过程中,存在重复,也可以构造其他随机数//1476063656393//6063697317//063754461
注意:BeanShell放置注册采样器的下面和放在测试用例下的区别:
每次都会执行BeanShell Sampler一次
放在注册采样器下:每次只执行一次:
JMeter中BeanShell用法总结(一)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。