一、Jmeter中的Bean Shell组件和语言规则
BeanShell是一种完全符合Java语法规则的脚本语言,同时他还有自己的语法规则。
Jmeter有哪些Bean Shell
- 前置处理器:BeanShell预处理程序。
- 定时器:BeanShell
- 采样器:BeanShell
- 后置处理器:BeanShell
- 断言:BeanShell
- 监听器:BeanShell
二、BeanShell的内置的变量和语法规则
1、log打印日志
log.info("哈哈哈哈哈哈~~~~~~~~~~~~~");
log.error("错误错误~~~~~~~~~~~~~");
//在控制台打印
System.out.println("这是JAVA的控制台打印");
2、vars表示:JmeterVariables,操作Jmeter变量(只能在当前线程组使用)
- 用户定义的变量
- 正则表达式,JSON提取器。
- 定义变量
//获取变量的值
log.info(vars.get("hhh"));
log.info(vars.get("access_token"));
vars.put("www","yyy");
3、props用于存取Jmeter的全局静态变量(可以跨线程组)
//获取全局静态变量
log.info(props.get("jmeter.save.saveservice.output_format"));
props.put("aaa","bbb");
4、prov获取到当前一个取样器返回的信息。
//获取前面取样器的值
log.info(prev.getResponseCode());
log.info(prev.getResponseDataAsString());
5、ctx上下文
//获取上下文所有的变量
System.out.println(ctx.getProperties());
三、Jmeter执行数据库操作
1、准备数据库的驱动jar包。
mysql,Oracle...
方式一:在测试计划里引用
方式二:放在Jmeter的lib目录
2、新建一个:JDBC connection configuration
3、新建一个:JDBC Request
提取用户名和密码
用户名和密码保存为变量
四、Jmeter非(GUI)界面方式运行
1、执行JMX文件的命令:jmeter
2、命令行参数: cmd
-n -t -n非界面方式运行 -t指定jmx文件的位置
-l -l指定生成的jtl格式的结果
-e -o -e生成HTML报告,-o指定HTML报告的文件夹(必须空目录)
五、使用Jmeter+Ant+Jenkins实现持续集成
1、下载ant并解压,解压后把ant的bin目录设置到path环境变量中。
2、需要一个build.xml文件,并把build,xml和test.jmx放到同一个目录。
3、配置全局配置文件:jmeter.properties
4、输入命令:ant 执行。