一、概述
BeanShell PreProcessor是一个前置处理器,它可以进行一些接口请求前的参数预处理,比如格式化参数,时间等等。它只支持java语言。
也可以使用JSR223 PreProcessor,选择java语言,java语言括号中的内容就是使用BeanShell引擎的意思。
二、参数说明
Parameter中填写的是要用到的参数,多个参数用空格区分。用到的参数都是之前在jmeter中得到了值的参数。
File Name:可以把脚本写在文件里,此处填带脚本的文件名
Script.:
如使用jar需将jar提前放入jmeter安装目录的\lib\ext下,并重新启动jmeter。其实也可以放到\lib,但官方建议放到\lib\ext。
使用import来导入,import的路径就是在eclipse中import的路径
使用vars.get("xxx")来将jmeter中的参数的值获取到java中。
使用vars.put("yyy",xxx)来将java中的参数的值储存到jmeter中,之后使用${yyy}来使用。
三、脚本举例
//将jmeter中的参数${COFFEE_TOKEN1}的值获取到java参数token中,并在后面拼接字符串TT String token = vars.get("COFFEE_TOKEN1") +"TT"; //将java中的参数token的值储存到jmeter中,之后使${COFFEE_TOKEN10}来使用。 vars.put("COFFEE_TOKEN10",token); |
注:
${COFFEE_TOKEN1} 是我通过正则表达式获取的tocken,所以用${xxx}的形式。
如果是用户自定义的变量,可以直接使用 COFFEE_TOKEN1
import java.util.*; import java.text.SimpleDateFormat; String date = (new SimpleDateFormat("yyMMdd")).format(new Date()); String datetime = (new SimpleDateFormat("MMddHHmmss")).format(new Date()); log.info("mobileno"); String mobileno="09"+datetime; vars.put("bs_mobileno",mobileno); |
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。