一些 Jmeter 中 BeanShell PreProcessor 可用的脚本

判断文件中的某个参数是否传来空值,常用来判断时间戳和随机值

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import java.util.Random;
import java.lang.String;

	public static String getReqID(String reqid){
		if("".equals(reqid)){
			return reqid;
			}
		else {
			return "${__RandomString(32,abcdefghijklmnopqrstuvwxyz0123456789)}";
            }
            }

    public static String getStamp(String stamp){
        if("".equals(stamp)){
            return stamp;
        }
        else {
            return "${__time(yyyyMMddHHmmss,)}";
        }
    }

String reqId = vars.get("reqId");
String stamp = vars.get("stamp");
String reqidutil = getReqID(reqId);
String stamputil = getStamp(stamp);
vars.put("RreqId", reqidutil);
vars.put("Rstamp", stamputil);

上面脚本中的参数 reqIdstamp 通过 get 方法从 csv 文件中获取, 如果 csv 文件中的值不为空,则返回脚本中函数生成的值; 如果 csv 文件中返回的值为空,则返回空。

最后返回的参数名是 RreqIdRstamp,供其他地方调用。