目录:
1.抓包工具charles
工具介绍
安装
Charles配置:Charles下载与安装教程(超详细)_不要问我y的博客-CSDN博客
Charles下载安装_choo choo charles下载教程_会飞的咕咕鱼的博客-CSDN博客
2.抓包工具fiddler
工具介绍
界面简介
抓取 HTTP 请求
抓取 HTTPS 请求
抓取移动端请求
注意:fiddler,模拟器的端口要一致:
查看接口信息
AutoResponder
断点
bpu xxx
bpafter xxx
弱网
3.抓包工具证书配置
Charles 基础设置
电脑证书配置
Windows 系统安装证书
Charles 端设置 ssl
移动端代理配置
注意事项
4.app抓包实战练习
抓包原理
接口抓包分析实战
过滤
重发
修改请求
断点(BreakPoint)
5.接口测试实战练习
LiteMall 搜索接口抓包分析
抓包分析:
得出请求地址:https://litemall.hogwarts.ceshiren.com/wx/goods/list
查看响应:
分析响应内容:并且生成接口文档:Python: 66666666666666
LiteMall 搜索接口测试用例设计 (根据上边的接口文档进行测试用例设计)
编写测试用例:SoftwareTest: 用来存放软件测试的代码或者文档
使用Postman 完成接口测试
保存 har 导入 postman
根据测试用例,使用postman编写脚本
导出测试集为json格式:SoftwareTest: 用来存放软件测试的代码或者文档
数据驱动
准备数据:CSV 格式数据
配置参数 :
使用csv格式的数据:
配置测试集变量:
运行:
运行结果:
准备数据:JSON 格式数据 SoftwareTest: 用来存放软件测试的代码或者文档
直接使用上边csv格式,配置的一些参数,我们只换了个数据格式,直接复用上边csv配置的参数,运行:
运行结果:
测试集的导入和导出
使用 Cookies
如果登录使用的是cookie这种方式,在postman中只要成功登录一次,登录成功之后的cookie信息就会保存在postman中,之后请求该网站其他接口时候,会自动在header中带上cookie,下面以百度为例:
1.填入url,点击headers查看,没有cookie信息
2.点击send下边的那个cookie,查看现在的cookie信息(什么都没有)
3.发送请求(这个时候cookie信息已经保存在postman中的headers上了)
4. 再次点击send下边的那个cookie,查看现在的cookie信息
5.我们现在访问百度页面的其他接口(这时候headers里边已经有刚才的登录的cookie信息了)
鉴权方式
参数传递
//获取响应数据的json对象
var jsonData = pm.response.json();
//从json对象中提取token值
var token = jsonData.data.token;
//把token值设置为测试集变量
pm.collectionVariables.set("token", token);
1.创建登录接口,发起登录请求
2.编写Tests,在Tests中把tocken值设置为测试集变量:再次发起请求:
3.运行结果:(查看测试集中的tocken)
4.在其他接口中使用tocken
设置鉴权
请求前脚本中获取参数(这个用来配置测试集的变量,不在像上边一样,一个请求得添加一回鉴权)
// 构造登录请求
const loginRequest = {
url: 'http://litemall.hogwarts.ceshiren.com/wx/auth/login',
method: "POST",
header: 'Content-Type: application/json',
body: {
mode: 'raw',
raw: JSON.stringify({'username': 'user123', "password": "user123"})
}
};
// 发送请求
pm.sendRequest(loginRequest, function (err, response) {
if (err) {
console.log(err);
} else {
console.log(response.json());
pm.collectionVariables.set("token", response.json().data.token);
}
});
导出代码