系统相关
首页 > 系统相关> > Jmeter4.0之beanshell引用外部jar

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  常用功能

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