Jmeter4.0之beanshell引用外部jar
作者:互联网
beanshell练习 ---导入外部jar包
步骤:
1.Eclipse下准备好测试类 ,如下
package test; public class TestBeanShell { public static String testHello(String username, String password) { if (!username.equals("clover")) { return "用户名错误"; } else if (!password.equals("456")) { return "密码错误"; } else { return "恭喜你,登陆成功!"; } } }
2.导出jar包,右键-export-JAR-test.jar
===================================================Jmeter 相关===============================================================================
3.将导出的jar包放在jmeter的lib\ext下: E:\WorkSpace\Jmeter\apache-jmeter-4.0\lib\ext
4.打开jmeter,在测试计划里边引入test.jar,同时并新增用户自定义的变量,beanshell sample,查看结果数
5.定义用户定义的变量 定义user passwd
6.线程组-右键添加-beanshell sample
7.编写beanshell 代码 获取用户名和密码,并传递给提前封装好的类,并返回登录后的结果
import test.*; //静态方法打点调用 不需要实例化 // 注意分号 注意分号 注意分号 a = vars.get("user"); b = vars.get("pass"); String c = TestBeanShell.testHello(a,b); log.info(c);
8.运行成功
总结及与遇到的问题
1.beanshell 中写的代码 没加分号; 导致一直报错=============对JAVA语法不熟
2.beanshell 常用功能
- vars.get("user") 获取变量值 如上面的用户定义的变量 user ,想要得到user 对应的值clover ,就这样使用:vars.get("user") 结果是clover
- vars.put("v1","${user}") ${user} 的结果是clover , 这句话就是将clover赋给v1 即 v1="clover"
- log.info("==========") 打印日志
3.以下三种种方式都可以取到用户名和密码的值
//String result = TestBeanShell.testHello("${user}", "${pass}"); //vars.put("v1",bsh.args[0]) vars.put("v1",bsh.args[1]); 在beanshhell 定义变量的时候要用空格隔开 ${user} ${pass} 空格隔开空格隔开空格隔开
//vars.ger("user") vars.get("pass")
4.进阶版
import test.*
vars.put("v1","${user}"); vars.put("v2","${pass}"); vars.put("v3",Parameters); String result = TestBeanShell.testHello(vars.get("v1"), vars.get("v2")); log.info(result); String name = vars.get("v1"); String pass = vars.get("v2"); String params = vars.get("v3"); log.info("输入用户名=" + name); log.info("输入密码=" + pass); log.info("params=" + params); //log.info("bsh.args="+ Arrays.toString(bsh.args)); int bshArgs = bsh.args.length; log.info("bsh.args数组长度="+Integer.toString(bshArgs)); for(int i = 0 ; i< bshArgs ; i++){ log.info("bsh.args第"+i+"个元素=" + bsh.args[i]); }
5.多实践多实践多实践!!!
标签:log,info,String,vars,get,jar,Jmeter4.0,beanshell,user 来源: https://www.cnblogs.com/eosclover/p/11489031.html