jmeter引入jar包执行报错Error invoking bsh method: source

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jmeter引入jar包执行报错Error invoking bsh method: source相关的知识,希望对你有一定的参考价值。

参考技术A 1.报错:Error invoking bsh method: source        In file: E:/Jmeter/firework-1.0-jar-with-dependencies.jar Encountered "META" at line 2, column 28.

2.脚本说明:登录脚本 用了加密和解密,加密成功,解密却失败,并且是同一个脚本

3.解决方法,也不知道为啥莫名就好了

将jar包放在jmete安装路径下/lib/ext下,并将下图添加的jar包路径删掉,然后就执行成功了

然后又试了下将jar包从jmete安装路径下/lib/ext下再移动到外面,并添加到安装路径下,也成功了,就是不知道为啥。。。

PS:如果有哪位大神知道为啥的话,可以评论哦!感谢留言!^_^

Jmeter(十五) - 从入门到精通 - JMeter导入自定义的Jar包(详解教程)

目录

1.简介

2.环境准备

3.具体思路

4.思路实现

5.JMeter引入自定义Jar包

6.小结


1.简介

  原计划这一篇是介绍前置处理器的基础知识的,结果由于许多小伙伴或者童鞋们在微信和博客园的短消息中留言问如何引入自己定义的Jar包呢???我一一回复告诉他们和引入插件的Jar包一样的道理,一通百通。但是感觉他们还是很迷糊很迷惘,因此在这里穿插一篇导入自定义的Jar包。还有另外一个原因就是前置处理器会用到这个自定义的Jar包。

2.环境准备

(1)Eclipse

  我们要引入自定义的Jar包,所以你需要一个可以编写脚本生成Jar的工具,当然了你可以选择其他的开发工具,宏哥这里选择Eclipse。

(2)JMeter

  JMeter就更不用多说了,今天的猪脚就是她。

3.具体思路

1.开发脚本

2.将脚本导出Jar包

3.JMeter引入Jar包

4.思路实现

1.开发脚本当然在Eclipse上了,首先我们开发一个简单的接口。

4.1代码实现

 4.2参考代码

package com.bjhg.test;

/**
 * @author 北京-宏哥
 *
 * 2020年7月2日
 */
public interface BeanJMeterUtil 
     //获取名字方法
     public String getUserName();
     //获取地址方法
     public String getAddress();
     

2.开发一个实现接口的类

4.3代码实现

 4.4 参考代码

package com.bjhg.test;

/**
 * @author 北京-宏哥
 *
 * 2020年7月2日
 */
public class BeanShellJMeter implements BeanJMeterUtil
    //定义变量名字
    private String userName;
    //定义变量地址
    private String address;
 
     
    public BeanShellJMeter(String name)
    
        this.userName = name;
    
     
    public BeanShellJMeter(String name,String address)
        this.userName = name;
        this.address = address;
    
     
    public String getUserName()
    
        return userName;
    
     
    public void setUserName(String userName)
    
        this.userName = userName;
    
     
    public String getAddress()
    
        return address;
    
     
    public void setAddress(String address)
    
        this.address = address;
    

3.测试接口是否实现。创建测试类test,实例化接口的实现类 BeanShellJMeter,调用该类中的方法并输出结果。

4.5代码实现

 4.6参考代码

package com.bjhg.test;

/**
 * @author 北京-宏哥
 *
 * 2020年7月2日
 */
public class test 
    public static void main(String[] args) 
        // 创建实现类的对象
        BeanShellJMeter bjhg = new BeanShellJMeter("宏哥","北京");

        System.out.println("Hello!我是:"+ bjhg.getAddress()+bjhg.getUserName());
    

4.7运行结果

 4.将脚本导出Jar包

(1)点击File,然后继续点击“Export”,如下图所示:

 (2)选择“JAR file”,然后点击“next”如下图所示:

 (3)选中刚刚编写脚本的工程,选择导出Jar包的位置(宏哥这里直接导入到Jmeter的jar包位置了),如下图所示:

 (4)点击“Finish”,如下图所示:

 (5)查看导出的Jar包,如下图所示:

 

5.JMeter引入自定义Jar包

1、新建测试计划,导入自定义的Jar包,如下图所示:

 

2、线程组下添加BeanShell 预处理程序(Parameters 放入2个参数 宏哥 北京),如下图所示:

 

 

3、脚本参考代码:

import com.bjhg.test.BeanShellJMeter;


BeanShellJMeter bs = new BeanShellJMeter(bsh.args[0],bsh.args[1]);

vars.put("address",bs.getAddress());
vars.put("username",bs.getUserName());

复制

4、然后再添加添加1个调试取样器,如下图所示:

 

5、配置好以后,点击“保存”,运行JMeter,查看表格结果(把读到的数据放入username和adress中),如下图所示:

6.小结

  好了,今天关于JMeter导入自定义Jar包就分享讲解到这里,希望对大家有所帮助。

以上是关于jmeter引入jar包执行报错Error invoking bsh method: source的主要内容,如果未能解决你的问题,请参考以下文章

jmeter的jar包问题遇到的坑

Jmeter常用脚本开发之JDBC请求

Error: Unable to access jarfile *.jar问题怎么解决

如何引入第三方jar包

Jmeter-java请求执行报错:java.lang.NoSuchFieldError: INSTANCE

android项目在add第三方jar包之后,报错