玩好JMeter进阶功能beanshell,你应该掌握常用的语法

beanshell的数据类型

Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。我们beanshell讲解中,只讲解其中的常用的字符类型,整型,浮点型,和它们之间的相互转换。
样例:

/// 定义长length变量的数据类型是"字符串"
String  length= "10";  
// 定义宽width变量的数据类型是"浮点型"
double  width=10.12;
// 定义高height变量的数据类型是“整型"
int  height= 10;

// 1、字符串 转-> 整型  OK
int length_int = Integer.parseInt(length);
log.info("【长length变量】 1、字符串 转-> 整型:"+length_int.toString());
// 2、字符串 转-> 浮点型  OK
length_double = Double.parseDouble(length);
log.info("【长length变量】 2、字符串 转-> 浮点型:"+length_double.toString());
// 3、整型   转-> 字符串 OK
String height_str = height.toString();
log.info("【高height变量】 3、整型   转-> 字符串:"+height_str); 
// 4、整型   转-> 浮点型 OK
height_double = (double)height;
log.info("【高height变量】 4、整型   转-> 浮点型:"+height_double.toString()); 
// 5、浮点型 转-> 字符串
String width_str = width.toString();
log.info("【宽width变量】 5、浮点型 转-> 字符串:"+width_str); 
// 6、浮点型 转-> 整型
width_int = width.intValue();
log.info("【宽width变量】 6、浮点型 转-> 整型:"+width_int.toString()); 

// 获取变量的类型
log.info(width_int.getClass().toString());
log.info(height_str.getClass().toString());
log.info(height_double.getClass().toString());

上面beanshell脚本运行的结果,可以在JMeter的运行日志可以看到。
在这里插入图片描述
总结:
1、字符串有小数的转整型会报异常,如10.123;
2、浮点型转整型时,会把小数点抹掉(如:6、浮点型 转-> 整型);
3、整型和浮点型进行加减乘除会报异常;

beanshell 运算符

beanshell的运算符与JAVA的一致,现在只讲解基础常用的几个类型:

  • 1.算术运算符
  • 2.关系运算符
  • 3.逻辑运算符

1. 算术运算符

算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。下表列出了所有的算术运算符。
表格中的实例假设整数变量A的值为10,变量B的值为20:

操作符 描述 例子
+ 加法 A + B 等于 30
- 减法 A – B 等于 -10
* 乘法 A * B等于200
/ 除法 B / A等于2
% 取余 B%A等于0
++ 自增 B++ 或 ++B 等于 21
自减 B-- 或 --B 等于 19

样例:

int a = 10;
int b = 20;
int c = 25;
int d = 25;
log.info("a + b = " + (a + b) );
log.info("a - b = " + (a - b) );
log.info("a * b = " + (a * b) );
log.info("b / a = " + (b / a) );
log.info("b % a = " + (b % a) );
log.info("c % a = " + (c % a) );
log.info("a++   = " +  (a++) );
log.info("a--   = " +  (a--) );
// 查看  d++ 与 ++d 的不同
log.info("d++   = " +  (d++) );
log.info("++d   = " +  (++d) );

上面beanshell脚本运行的结果,可以在JMeter的运行日志可以看到。
在这里插入图片描述
总结:
1、自增(++)自减(–)运算符是一种特殊的算术运算符,在算术运算符中需要两个操作数来进行运算,而自增自减运算符是一个操作数;
2、前缀自增自减法(++a,–a): 先进行自增或者自减运算,再进行表达式运算;
3、后缀自增自减法(a++,a–): 先进行表达式运算,再进行自增或者自减运算 实例:

2. 关系运算符

表格中的实例整数变量A的值为10,变量B的值为20:

操作符 描述 例子
== 检查如果两个操作数的值是否相等,如果相等则条件为真。 (A == B)为假。
!= 检查如果两个操作数的值是否相等,如果值不相等则条件为真。 (A != B) 为真。
> 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。 (A> B)为假。
< 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。 (A <B)为真。
>= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。 (A> = B)为假。
<= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。 (A <= B)为真。

样例:

int a = 10;
int b = 20;
log.info("a == b = " + (a == b) );
log.info("a != b = " + 
  • 23
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BeanShell是一种类似于Java的脚本语言,它可以在JMeter中使用。以下是一些BeanShell语法的基本要点: 1. 变量声明和赋值: - 使用关键字 `var` 来声明变量,例如:`var x;` - 可以在声明时同时赋初值,例如:`var x = 10;` - 变量类型是根据赋值自动推断的。 2. 脚本注释: - 使用 `//` 进行单行注释,例如:`// 这是注释` - 使用 `/* ... */` 进行多行注释,例如: ``` /* * 这是多行注释 * 第二行 */ ``` 3. 控制流语句: - `if` 条件语句: ``` if (condition) { // 执行代码块 } else if (condition) { // 执行代码块 } else { // 执行代码块 } ``` - `for` 循环语句: ``` for (initialization; condition; update) { // 执行循环体代码块 } ``` - `while` 循环语句: ``` while (condition) { // 执行循环体代码块 } ``` 4. 方法和函数: - 定义方法: ``` return_type methodName(parameter1, parameter2, ...) { // 方法体 return value; } ``` - 调用方法:`methodName(argument1, argument2, ...)` 5. 输出信息: - 使用 `print` 或 `println` 来输出信息,例如:`print("Hello, world!");` 6. JMeter相关对象和方法: - JMeter提供了一些内置的对象和方法,例如:`vars`, `props`, `ctx`, `prev`, `log` 等。可以在BeanShell脚本中使用这些对象和方法来获取和操作测试相关的数据。 这些是BeanShell语法的一些基本要点。你可以根据具体的需求和场景,在BeanShell脚本中使用这些语法来编写逻辑。同时,还可以参考BeanShell的官方文档和示例来了解更多详细的语法规则和用法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值