Jmeter+Ant+Git/SVN+Jenkins实现持续集成接口测试,一文精通(三)

一、Jmeter中的Bean Shell组件和语言规则

BeanShell是一种完全符合java语法规则的脚本语言,同时他还有自己的语法规则。

java包括:javase,jjavaee,javame

Jmeter有哪些Bean Shell:

1.前置处理器:Beanshell预处理程序。

2.定时器:BeanShell

3.采样器:BeanShell

4.后置处理器:BeanShell

5.断言:BeanShell

6.监听器:BeanShell


二、BeanShell的内置的变量和语法规则

1.log 打印日志

log.info("123");

log.error("123");

//在控制台打印

System.out.println("123");

2.vars表示:JmeterVariables,操作Jmeter变量,(只能在当前线程组使用)

1)用户定义的变量

2)正则表达式,JSON提取器。

3)定义变量

//获取变量的值

log.info(vars.get("123"));

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做不到的,那么都可以使用BeanShell解决。


三、Jmeter执行数据库操作

1.准备数据库的驱动Jar包。

mysql,oracle....

方式一:在测试计划里面引用。

方式二:放到jmeter的lib目录。

2,新建一个:JDBC connnection configuration.

连接池的名称:

3.新建一个:JDBC request


四、Jmeter的非GUI(界面)方式运行

1.执行JMX文件的命令:jmeter。

2.命令行参数:

-n -t -n非界面方式运行 -t指定jmx文件的位置。

-l -l指定生成的jtl格式的结果。

  • e -o -e生成HTML报告,-o指定HTML报告的文件夹(这个文件夹必须空目录)

五、使用Jmeter+Ant+Git/SVN+Jenkins实现持续集成

1.下载Ant并解压,解压之后把ant的bin目录设置到path环境变量中。

官网:http://ant.apache.org/bindownload.cgi

2.需要一个build.xml文件。并且把build.xml和test.jmx放到同一个目录。

3.配置全局配置文件:jmeter.properties

4.输入命令:ant 执行。

5.结合Jenkins

相关推荐
我唔知啊33 分钟前
SwiftUI 无限循环轮播图 支持手动控制
ios·swiftui
hwshea2 小时前
Elasticsearch安装与配置全指南
运维·jenkins
QuantumLeap丶3 小时前
《Flutter全栈开发实战指南:从零到高级》- 08 -导航与路由管理
flutter·ios·dart
inx1774 小时前
为什么要用Git?如何使用Git?
git
LinkTime_Cloud5 小时前
苹果牵手SpaceX,iPhone 18 Pro将实现卫星直接上网
ios·iphone
2501_915921435 小时前
iOS 26 描述文件管理与开发环境配置 多工具协作的实战指南
android·macos·ios·小程序·uni-app·cocoa·iphone
2501_915909065 小时前
iOS 抓包实战 从原理到复现、定位与真机取证全流程
android·ios·小程序·https·uni-app·iphone·webview
2501_915106326 小时前
HBuilder 上架 iOS 应用全流程指南:从云打包到开心上架(Appuploader)上传的跨平台发布实践
android·ios·小程序·https·uni-app·iphone·webview
Empty_7776 小时前
Keepalived双机热备
linux·git·github
谢尔登6 小时前
【GitLab/CI】前端 CI
前端·ci/cd·gitlab