jmeter接口测试(三)

发布于:2025-03-13 ⋅ 阅读:(16) ⋅ 点赞:(0)

一、跨线程组的鉴权

前提:第一个接口和第二个接口存在接口关联(通过token鉴权),同时还存在cookie鉴权。

接口压测:接口压力测试的任务,要求对其中的一个接口进行500虚拟用户并发,但是这个接口必须要先登录之后获取到token才可以请求成功。
两种获取token的方式:
1、通过登录接口获取
2、通过一个独立接口获取


A、首先设置jmeter.properties里面的参数
   CookieManager.save.cookies=true
   才能够看到Cookie

在这里插入图片描述

B、跨线程组cookie鉴权
   只能在一个线程组里面传值的叫局部变量(正则,JSON,用户自定义变量)
   能够在多个线程组之间传值的叫全局变量

 需要通过Beanshell组件(既能使用java语言,也有自己的语法的组件)来设置:
 __setProperty()  设置Jmeter的全局属性,能够在多个线程组之间传值。
 __P()   获取全局属性

在这里插入图片描述
其他同理操作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、Jmeter执行数据库操作

应用场景:数据库断言
1.在测试计划中引入数据库的驱动文件
在这里插入图片描述
2.设置数据库连接池
在这里插入图片描述
3、发送JDBC数据库请求
在这里插入图片描述
在这里插入图片描述

使用Beanshell的场景:
1、数据库断言
2、接口加密(AES,DES,MD5,BASE64,RSA,SHA1--SHA256)
3、签名(混合加密和签名sign)
Beanshell语言+java语言

三、Jmeter+Ant+Git+Jenkins实现持续集成

应用场景:接口回归测试,多个测试人员实现版本控制.
1、实现Jmeter的非GUI命令行测试
	命令格式一:没有报告
	jmeter -n -t test.jmx
	-n 命令行执行
	-t  制定Jmeter的jmx脚本文件的名称

	命令格式二:生成jt报告
	jmeter -n -t test.jmx -l result.jtl
	-l 表示生成jtl报告名称

	命令格式三:生成html格式
	jmeter -n -t test.jmx -l result.jtl -e -o results
2、通过Ant执行
	参考文件:https://cloud.tencent.com/developer/article/2053749
	如果需要build.xml文件和jmeter.results.shanhe.me.xsl,可以百度网盘中 jmeter报告所需的文件 进行下载
   (1)下载Ant并解压
   (2)需要一个build.xml配置文件
   (3)通过Ant命令运行

Jmeter加强:
1、加解密
2、beanshell语言(深入应用,自定义函数,引入外部java文件,class,jar等)
3、websocket和dubbo接口
4、jenkins持续集成