目录
前言:
1、首先编写我们的java类,如具体代码如下:
2、使用eclipse把java导出成jar包,如timetool.jar。
3、Jmeter 测试计划底部的library找到timetool.jar,导入进去。
4、在Jmeter测试计划下新建线程组,然后在线程组下添加BeanShell Sampler(线程组->添加->Sampler->BeanShell Sampler)
5、调用脚本,如在BeanShell Sampler中的script下添加:
6、在线程组中添加监听器“察看结果树”。
前言:
在JMeter中,你可以使用自定义的扩展函数来增加额外的功能和灵活性。扩展函数允许你编写自己的逻辑代码,以满足特定的测试需求。通过编写扩展函数,你可以实现更复杂的数据处理、动态参数生成、复杂的计算逻辑等功能。
Jmeter的官方提供的函数挺好用的,但是往往这些函数并不能满足我们所有的需要。所以,我们需要编写自己的扩展函数,下面以获取当前(或者向前,向后)的时间为例。
1、首先编写我们的java类,如具体代码如下:
package com.ste.ruink.timetool;
import java.text.SimpleDateFormat;
import java.util.Date;
public class TimeConvert {
/*
* 获取时间,当前时间往前(后)多少秒,flag为前后标识符(pre-前,later-后,其他值时默认为当前)
* seconds为间隔时间多少秒,format为日期格式,默认为yyyy-MM-dd HH:mm:ss
*/
public static String getTime(String flag,long sec,String format){
//获取当前时间戳
long timestamp = System.currentTimeMillis();
long finaltime;
if(flag=="pre"){
finaltime = timestamp - sec*1000;
}else if(flag=="later"){
finaltime = timestamp + sec*1000;
}else{
finaltime = timestamp;
}
//判断format是否有值
if(format.equals(null)||format==""){
format="yyyy-MM-dd HH:mm:ss";
}
String timestr = String.valueOf(finaltime);
String getdate = stampToDate(timestr,format);
return getdate;
}
/*
* 将时间戳转换为时间
*/
public static String stampToDate(String s,String format){
String res;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format);
long lt = new Long(s);
Date date = new Date(lt);
res = simpleDateFormat.format(date);
return res;
}
/*
* 测试代码
*/
/*
public static void main(String[] args) {
System.out.print(getTime("",60,""));
}*/
}
2、使用eclipse把java导出成jar包,如timetool.jar。
(导出jar包:选中要导出的java,然后右击鼠标,依次选择Export->Java->JAR file,然后在界面中填写导出的路径,点击Finish按钮完成导出)
3、Jmeter 测试计划底部的library找到timetool.jar,导入进去。
4、在Jmeter测试计划下新建线程组,然后在线程组下添加BeanShell Sampler(线程组->添加->Sampler->BeanShell Sampler)
5、调用脚本,如在BeanShell Sampler中的script下添加:
import com.ste.ruink.timetool.TimeConvert; //标明类路径
String time = TimeConvert.getTime("",0,""); //调用类中getTime方法
return time; //返回获取到的时间
6、在线程组中添加监听器“察看结果树”。
然后再点击执行,这时神奇的事情出现了,我们获取到了当前的时间。
作为一位过来人也是希望大家少走一些弯路
在这里我给大家分享一些自动化测试前进之路的必须品,希望能对你带来帮助。
(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等)
相信能使你更好的进步!
点击下方小卡片