java文件打包成jar包且在jmeter中的应用

2022-07-21 14:50:13 浏览数 (1)

一、缘由

今天测试的时候因为业务的测试需要通过jmeter进行接口请求制造不同日期的数据,其中一个参数就是提供不同时间点的时间戳。虽然jmeter有内置的函数__time(,)来获取当前的时间戳,不太满足我的需求。但是我的要求是获取指定日期时间点的时间戳。刚开始的时候,都是去网上去找一些在线的工具去转换得到时间戳后才粘贴到jmeter,觉得这个有点费时间。突然想到jmeter支持java代码编写,支持jar导入,那么我干嘛不自己制作一个jar导入jmeter来获取我对于的日期的时间戳呢?对吧?那么怎么来制作一个jar包呢?请继续往下看!!

二、制作jar的步骤

一、先写一个java类-Timestamp.java代码如下:

代码语言:javascript复制
package timestamp;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Timestamp {
    public static String getTimestamp(String timeStr) {
        String timestamp = null;
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        try {
            Date date = sdf.parse(timeStr);
            timestamp = String.valueOf(date.getTime());
        } catch (Exception ep) {
            ep.printStackTrace();
        }
        return timestamp;
    }

}

二、对java文件进行编译同时打包成jar包

1、首先进入Timestamp.java文件所在目录,用javac命令对java文件进行编译,如下:

编译完成后,当前目录下会生成一个字节码文件Timestamp.class,如下:

2、通过jar命令将timestamp.class 文件打包成jar包,我把整个包打包,如下:

运行jar命令后,当前目录下会生成一个jar包,如下:

3、用压缩软件打开jar包,找到META-INF下的清单文件MAINIFEST.MF,如下:

4、用记事本打开加上属性值Main-Class,如下:

Main-Class冒号后面需要空格和最后需要留一行空行。

到此为止jar制作完成,那么怎么在jmeter里面应用呢?请继续看下去哦!!

三、jar包在jmeter的应用

1、在jmeter新建一个线程组,且在线程组把刚才生成jar添加到classpath,如下:

2、然后新建一个BeanShell Sampler,且写下java代码,导入包和java一样,如下:

写好java代码后,同时把它放入jmeter内置变量vars中,然后再http中怎么获取该变量呢?通过${变量名}获取。下面我以百度一个连接为例子,如下:

3、运行下,查看是否应用变量成功,通过结果树进行查看是否成功,如下:

变量已经成功被获取到,时间-2019-09-05 19:30:30的时间戳就是

1567683030000,这样说明应用的变量没有错。

目前jar包制作和jar在jmeter中应用中就差不多就是这样子。

0 人点赞