美文网首页
Jmeter学习记录6--使用BeanShell 前置处理器,获

Jmeter学习记录6--使用BeanShell 前置处理器,获

作者: 测试之心 | 来源:发表于2021-04-14 08:24 被阅读0次

    有时候,我们发送的请求中,是用时间戳作为入参的,比如查询最近一天的数据,或者查询最近一周的数据,这时候,可以使用BeanShell获取时间戳。

    添加一个BeanShell 前置处理器,在Script中写入下面脚本:

    long nowTime =System.currentTimeMillis();
    long todayStartTime =nowTime - ((nowTime + TimeZone.getDefault().getRawOffset()) % (24 * 60 * 60 * 1000L));
    vars.put("time",String.valueOf(todayStartTime));

    该脚本的意义是获取当天零点的时间戳,然后传递给Jmeter的time变量。

    有些时候,入参是日期格式的,但是发送请求的时候,需要用的是时间戳,这时候可以用beanshell来处理一下。

    代码如下:

    import java.text.*;
    import java.util.Date;
    String dateStart1 = vars.get("dateStart");
    String dateEnd1 =  vars.get("dateEnd");
    Date time1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(dateStart1);
    Date timeEnd1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(dateEnd1);
    String time = String.valueOf(time1.getTime());
    String timeEnd = String.valueOf(timeEnd1.getTime());
    vars.put("time",time);
    vars.put("timeEnd",timeEnd);

    在Debug中可以看到

    相关文章

      网友评论

          本文标题:Jmeter学习记录6--使用BeanShell 前置处理器,获

          本文链接:https://www.haomeiwen.com/subject/tlfklltx.html