JMeter
Jmeter
测试基础
介绍测试
线程和进程
性能测试:模拟很多用户去访问某个接口,聚合报告。
接口测试
定义
个人理解:对后端给出的访问地址进行测试,确保其能正常使用
接口:特殊URL地址,负责数据的操作。
四要素
- 请求URL
- 请求方式:GET、POST、Restful风格”PUT、DELETE
- 请求参数
- 返回内容
以上都ok,看请求头:content-Type:application/json
JMeter接口测试
添加取样器(HTTP)
填写对应4要素
添加监听器
运行并查看结果
测试片段
实现前置请求,例如商城登录后才能测的其它功能
模块化的封装,各测试独立
新建测试片段,并将写好的部分放入测试片段中
可将需要的测试片段进行保存,然后重复利用
线程组中添加include控制器,选择对应文件
环境变更
添加用户定义的变量
值 -> 变量
添加经常更改的值
如ip地址、端口号
修改请求中的对应位置的值
${变量名}
正例和反例
多组测试数据
DDT:数据驱动测试。 — 自动化测试有名
添加CSV Data Set Config
添加对应csv文件
修改测试接口请求参数
${变量名}
添加逻辑控制器 - 循环控制器
修改控制器位置和循环次数
断言
校验核心数据,数据 + Type
添加断言
常用json断言
添加JSONPATH和期望值
需要理解:JSONPATH
不同层数据获取
- $xxx
- $xxx.xxx
- $xxx.xxx.xxx
修改csv文件将断言改成变量
JSON提取器
Token问题
添加JSON提取器
填入对应数据
修改订单请求
连接数据库
添加JDBC Connection Configuration
配置填写
添加需要的MySQL的jar包(注意版本)
添加JDBC Request
添加别名,输入sql语句
将请求数据库的数据以变量形式存储
熟悉JMeter数据库变量赋值规则
变量名_顺序递增的数字(从1开始)
xxx_1、xxx_2 …
随机抽查
修改sql语句
1 | select id, book_name, book_desc from book where id = 114 |
检查多条
变量间的嵌套: __V函数
{__V(ids_{n})}
添加循环控制器和计数器并填写需要数据
填写JSON断言(利用V函数对其中进行拼接)
调试
可以添加调试取样器
加密接口测试
银行、金融类、自研类、互联网大公司
加密与普通接口的区别
加密接口:密文传输
通过算法对数据进行加密,形成密文
HTTPS
端对端加密
JMeter实现加密接口
获取当前用户名的加密数据
这里借助了第三方工具。
获取当前用户密码的加密数据
添加JSON提取器,提取数据并填入请求中
beanShell极度不推荐
java脚本的片段
- 开发好用
- 测试噩梦
创建OS进程取样器1
py脚本
1 | import base64 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 尔玉博客!