jmeter关联可以通过二种方式来完成,获取到返回结果中指定的值 。它们分别是正则表达式提取器、 json path extractor 。
(1)正则表达式提取器
若想获取的返回值未匹配到,可以把正则表达式两边匹配的数据扩大点 。
文章插图
a. 关于正则表达式
():括起来的部分就是要提取的 。
.:匹配除换行外的任何字符串 。
+:代表+号前面的字符必须至少出现一次(一次或多次) 。
【Jmeter接口测试+压力测试】?:代表?前面的字符最多可以出现一次,在找到第一个匹配项后停止(0次或1次) 。
:代表号前面的字符可以不出现,也可以出现一次或者多次(0次、1次或者多次)
(.*):贪婪模式,匹配尽可能多的字符
(.*?)或(.+?):匹配尽可能少的字符,一旦匹配到第一个就不往下走了 。
b. 关于模板
若想提取多个值的话,比如是a和b这两个值,则可以写成:$1$$2$ 。无论要提取多少个值,引用名称就是一个的,比如名称为id,${id_go}:获取整个字符串ab,${id_g1}:获取的是a,${id_g2}:获取的是b 。
下面有一个具体的实例,如下图所示:
文章插图
文章插图
文章插图
(2)json path extractor
jmeter通过安装json path extractor插件来处理json串,提取json串中的字段值 。插件的下载地址:
https://jmeter-plugins.org/?search=jpgc-json,下载完成,解压后,直接把lib文件夹放到jmeter相应目录下面 。特别说明:jmeter 2.xx左右的版本尝试过无法使用该插件,在jmeter 3.xx左右的版本装完插件后能正常使用 。
需要在请求下创建后置处理器-jp@gc-JSON Path Extractor,具体的实例如下所示:
文章插图
文章插图
文章插图
关于json path相关插件的方法和使用,推荐可以看这篇博客:
http://www.jianshu.com/p/56a607fc0d8f
jmeter 操作数据库
操作数据库基本有四个步骤:(1)导入MySQL的jdbc的jar包 (2)创建数据库的连接配置,线程组里添加配置元件-JDBC Connection Configuration (3)线程组里添加jdbc request,写sql语句 (4)添加察看结果树,点击启动按钮,就能看到执行的SQL 。具体的实例如下截图所示:
文章插图
文章插图
文章插图
文章插图
特别说明:jmeter还可以操作oracle、postgreSQL、msSQL、mongodb等等数据库,同时不同的数据库,JDBC Connection Configuration填写的Database url格式和JDBC Driver驱动名称也不相同 。jmeter数据库驱动列表如下表所示:
Jmeter-
文章插图
webservice接口脚本基本步骤:
(1)先需要通过soapui工具获取到webservice接口的请求地址、请求报文和请求soapaction 。
(2)jmeter新建一个线程组
(3)线程组下建立SOAP/XML-RPC Request,写入请求url、请求报文、请求soapaction 。
(4)启动jmeter,调用接口,通过察看结果树查看返回值 。
soapui获取信息的实例如下图所示:
文章插图
soapui提交完后,点击raw,可看到soapation,有些接口若没返回soapation,则jmeter里也就不用填 。
文章插图
jmeter-webservice脚本实例如下图所示:
文章插图
压力测试
压力测试分两种场景:一种是单场景,压一个接口的;第二种是混合场景,多个有关联的接口 。压测时间,一般场景都运行10-15分钟 。如果是疲劳测试,可以压一天或一周,根据实际情况来定 。
推荐阅读
- UI 自动化测试框架设计与 PageObject 改造
- 一个软件测试员开发的IT在线工具网已上线,欢迎体验
- 开源一款超实用的 Dubbo 测试工具,已用半年,感觉很有feel
- 小白教你慢速攻击安全测试
- 联发科|光比跑分怎么够?天玑9000影像能力测试:解锁“夜景录像”神技
- 利用Fiddler来Mock接口返回值
- 基于MEC的边缘CDN业务调度方案及测试分析
- 华为实验演示:利用路由器的接口配置VRRP
- python高准确率滑动验证破解平台,提供免费api接口,解决反爬虫
- 超赞!JMeter 模拟超过 5 万的并发用户