API⾃动化测试(3)
SESSION请求
它是存储在服务端的
流程:
1、客户端输入账户和密码,登录成功,在服务端生成一个SESSIONID同时存储在服务端(DB or Redis)
2、服务端把生成的SESSIONID通过响应头中的Set-Cookie返回给客户端
3、再系统下个请求中,比如查看个人主页,发送个人主页请求的时候,会在请求头中的Cookie中带上服务端返回来的SESSIONID发送给服务端
4、服务端接收到客户端发送过来的SESSIONID和存储在自己本地的SESSIONID之间会做一个对比
5、如果一致,允许访问个人主页
6、如果不一致,就重定向到登录的页面

本质上是SESSION原理来实现的,我们一般称呼它为令牌。前后端分类的产品使用的都是TOKEN。目前TOKE N使用的技术一般是JWT
JWT:Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。
TOKEN的特点:
1、每次登录成功后返回的token是不一样是的,是一个随机的字符串
2、TOKEN一般通过响应数据返回给客户端
3、客户端发送请求给服务端,是通过请求头里面的Authorization: JWT TOKEN

配置Charles
Charles是⼀个抓包⼯具,使⽤它可以获取到WEB请求以及APP请求的⽹络请求。我们⾸先需要安装它,它的下载 地址为:https://www.charlesproxy.com/。 基本配置由于很多⽹站使⽤的是HTTPS的请求,我们需要进⾏配置,配置的步骤具体可以总结为:
1、安装证书,需要把证书安装到可信任的安全列表中


2、配置443的端⼝信息

charles操作:
请求响应时间:就是一个完整的HTTP请求流程的时间之和。
弱网络的测试(需要考虑不同地区的实际网络情况)
弱网络的测试目的是测试不同网络类型来验证程序的响应时间是否可以让用户接受的时间范围内
1、使用charles等工具来模拟弱网络的情况

2、使用浏览器的调试模式来模拟弱网络的情况


3.使用Charles工具来模拟高并发(同一时刻客户端向服务端发送大量的网络请求)


POSTMAN实战
断言(assert)在postman里面,写assert的地方是tests 如:

获取响应数据并展示在调试模式:

定义并获取值(类比Python,方法雷同)



获取数据并进行断言(===与==相同


BOSS直聘断言:



浙公网安备 33010602011771号