Java自动化测试(接口鉴权 16)
参数化2
在testng.xml
中增加parameter
可以赋值给DataProvider
1 | <parameter name="sheetIndex" value="0"></parameter> |
测试代码:
1 | public class RegisterCase { |
class中定义一个int对象sheetIndex
在BeforeClass
中拿到testng.xml
里面的Parameters
将它赋值给我们刚定义的int对象,然后在DataProvider
中使用即可。
修改的代码提交:
https://github.com/zx490336534/auto_api/commit/ee6da5809c98396373ec29a8b6a3980bcde5d172
cookies
Cookie,有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。
存储在客户端(我们的电脑上)
打开浏览器,打开F12,进入Application
可以看到Cookies
Expires/Max-Age:存活时间
Session
Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web页时,如果该用户还没有会话,则Web服务器将自动创建一个 Session对象。当会话过期或被放弃后,服务器将终止该会话。Session 对象最常见的一个用法就是存储用户的首选项。例如,如果用户指明不喜欢查看图形,就可以将该信息存储在Session对象中。有关使用Session 对象的详细信息,请参阅“ASP应用程序”部分的“管理会话”。注意会话状态仅在支持cookie的浏览器中保留。
token
Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。
Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,这样的背景下,Token便应运而生。Token的目的是为了减轻服务器的压力,减少频繁的查询数据库,使服务器更加健壮。
接口文档鉴权部分
修改代码
将三个请求的方法最后的printResponse(response)
返回出来
1 | return printResponse(response); |
定义一个存储的类
1 | package com.zhongxin.utils; |
从登陆接口获取token
1 |
|
存储类中添加默认头
1 | // 存储默认请求头 |
修改http请求代码
将headers
直接传入
1 | public static String call(CaseInfo caseInfo, Map<String, String> headers) { |
修改旧注册http请求
传入默认头部信息UserData.DEFAULT_HEADERS
1 |
|
充值接口实现
1 | package com.zhongxin.cases; |