版权声明:本文为博主原创文章,未经博主允许不得转载。


【try-catch】

建议使用Try----Catch块,这样Java语句出现问题时,日志更清晰;

try {
//java代码
}
catch (Throwable ex) {
log.error("something wrong in BeanShell PostProcessor", ex);
throw ex;
}

【获取当前年月日时分秒毫秒】

如下示例:获取当前年月日时分秒毫秒并构造成形如“2017-08-16T15:35:28.456Z”的形式;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Calendar; Calendar cal = Calendar.getInstance(); int YY = cal.get(Calendar.YEAR);
int MM = cal.get(Calendar.MONTH) + 1;
int DD = cal.get(Calendar.DATE);
int HH = cal.get(Calendar.HOUR_OF_DAY);
int MM = cal.get(Calendar.MINUTE);
int SS = cal.get(Calendar.SECOND);
int MI = cal.get(Calendar.MILLISECOND); vars.put("NowDate",DD+"T"+HH+":"+MM+":"+SS+"."+MI); //构造成请求中所需的时间格式

【对参数值进行数学运算】

如下示例:是一个对话脚本的片段,IF条件控制器使用“${__javaScript("${MessageNum}">0)}”作为条件,每发送一条消息,MessageNum -1,共发送10次后结束,下面使用BeanShell  后置处理器,在发送消息的请求后使用BeanShell 后置处理器MessageNum进行处理;

使用到的Java语句:

int tmpMessageNum = Integer.parseInt(StringValue);   //string到int

String MessageNum = Integer.toString(tmpMessageNum);   //int到string

try {
String tmp = vars.get("MessageNum"); //获取当前MessageNum值 int tmpMessageNum = Integer.parseInt(tmp); //string到int //如右语句在Jmeter中使用报错,未解---Integer.valueOf(tmp).intValue(); tmpMessageNum = tmpMessageNum - 1; //处理完一条则剩余处理的条数少一条 String MessageNum = Integer.toString(tmpMessageNum); //int到string
//log.info(MessageNum); vars.put("MessageNum",MessageNum);
}
catch (Throwable ex) {
log.error("something wrong", ex);
throw ex;
}

BeanShell Processor_使用Java处理脚本的更多相关文章

  1. 【原创】LoadRunner Java Vuser脚本的配置和调试指南

    1 编写目的 本文介绍了Loadrunner多负载压力机的配置,并通过测试Java Vuser的数据库连接脚本对配置结果进行了验证,同时对配置过程中遇到的问题和解决的过程进行了记录,关于Java数据库 ...

  2. 老李分享:loadrunner的java user脚本开发

    老李分享:loadrunner的java user脚本开发 poptest在性能测试loadrunner的课程里,以web协议为主,同时也讲解其他协议的脚本开发,对于一个性能测试工程师需要掌握一个以上 ...

  3. Loadrunner与idea编写加密的java Vusers脚本总结

    Loadrunner与idea编写加密的java Vusers脚本总结 准备工作:   jdk版本的选择:       Loadrunner11 使用版本jdk1.6 32位(如果使用1.7的Load ...

  4. Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密

    [前言] 在工作中,有时候我们请求的参数可能需要加密,比如登录接口中的密码做了加密操作,今天我就给大家介绍一种方法:Jmeter用BeanShell Sampler调用java写的jar包进行MD5加 ...

  5. java ScriptEngine 使用 (java运行脚本文件)

    转自:http://www.tuicool.com/articles/imEbQbA Java SE 6最引人注目的新功能之一就是内嵌了脚本支持.在默认情况下,Java SE 6只支持JavaScri ...

  6. Java的脚本机制、编译器API

    学习 xxl-job 定时任务时了解到基于 JVM 的 Grovvy 脚本语言.搭建 Jenkins 时知道了编译API 1. Java 脚本机制 Java 的脚本 API 可以让我们调用 JavaS ...

  7. Beanshell vs JSR223 vs Java JMeter脚本:性能关闭你一直在等待!

    有几个选项可用于执行自定义JMeter脚本并扩展基线JMeter功能.查看最流行的扩展机制,比较性能并分析哪一个是最好的. 这是乐队之战,JMeter风格. Beanshell V. JSR223 V ...

  8. Java调用脚本

    几个参考: java调用shell http://www.cnblogs.com/Seamanm/archive/2010/10/04/1842059.html java程序中调用linux命令    ...

  9. loadrunner之java user脚本开发

    脚本开发环境: loadrunner11.0 jdk1.6.32_x86_32 脚本开发 1.选择JavaVuser协议 2.配置java环境(Vuser--RunTime Settings) 3.开 ...

随机推荐

  1. AJAX流程 代码

    var xml =      window.XMLHttpRequest ?new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHT ...

  2. Python Twisted系列教程2:异步编程初探与reactor模式

    作者:dave@http://krondo.com/slow-poetry-and-the-apocalypse/  译者:杨晓伟(采用意译) 这个系列是从这里开始的,欢迎你再次来到这里来.现在我们可 ...

  3. Win7开始菜单所在目录

    C:\ProgramData\Microsoft\Windows\Start Menu\Programs 可在此目录下归类,建文件夹

  4. 第十二章 MySQL触发器(待续)

    ······

  5. c++builder delphi 调用dll dll编写

    c++builder动态调用dll // 定义 typedef int __stdcall MyFunction (int x, char *str); ; String dllName = &quo ...

  6. Tornado 高并发源码分析之二---Tornado启动和请求处理流程

    Tornado 服务器启动流程 因为Tornado 里使用了很多传类的方式,也就是delegate,之所以要这么做,其实和 iOS 开发那样,也很多的 delegate, 如此来实现高度解耦,但是比较 ...

  7. collections、time和datetime模块

    主要内容: 一.collections模块 二.time模块 三.datetime模块 1️⃣  collection模块 1.什么是collections模块.干什么用? collections模块 ...

  8. IIS设置Access-Control-Allow-Origin

    打开iis,找到“HTTP响应标头”点进去, 在右侧可以看到添加,然后添加如下标头即可Access-Control-Allow-Headers:Content-Type, api_key, Autho ...

  9. 线程dump

    当应用程序运行变慢或者发生故障时,可能通过分析java的Thread Dumps得到分析他们得到阻塞和存在瓶颈的线程. 线程堆栈是虚拟机中线程(包括锁)状态的一个瞬间状态的快照,即系统在某一个时刻所有 ...

  10. Process management of windows

    igfxem.exe进程是正常的进程.是intel家的核显驱动类的进程.核显即"核芯显卡",是指GPU部分它是与CPU建立在同一内核芯片上,两者完全融合的芯片."核芯显卡 ...