一、前言
业务系统的登录均要经过统一登录系统S,本篇演示统一登录处理,一个是内部业务系统C(其余内部业务系统AB用的都是相同账号密码),一个是外部用户使用的系统W,因为账号密码以及headers信息都不一样,所以要分开处理登录。这里要先贴一下请求要用到的数据。
说明:登录进了S系统,拿到token即可直接请求内部业务系统ABC的接口,同理外部业务系统W亦是如此。所以本篇主要讲述的是如何登录S系统
1、conf/config.ini
接口请求时需要拿到配置文件中的域名地址,env可切换环境,即不用改业务代码,直接改配置文件即可适配不同测试环境的接口自动化测试。
y_api_url,是业务系统ABCW的接口域名,s_api_url是登录系统S的接口域名。
[ENV] env = QA1 [QA1] y_api_url = https://qa1-api.y.cn s_api_url = https://qa-s-xxx.cn [QA2] y_api_url = https://qa1-api.y.cn s_api_url = https://qa-s-xxx.cn
2、data/userInfo.yaml
要拿到登录token,需要先登录S系统,S登录接口是嵌入到各个业务系统,所以请求体是一样的只是账号密码不一样,故要分开来,内部业务系统ABC均可用s_login_info的用户信息,外部业务系统W用的是w_login_info的用户信息。
QA1: s_login_info: loginFromServer: 'https://qa-xxx.cn/#/' loginFromSystemCode: S #passwordVersion: 1 #去掉该参数,password传输可不加密 username: zhangsan password: 1231234 verification: w_login_info: loginFromServer: 'https://qa-xxx.cn/#/' loginFromSystemCode: S #passwordVersion: 1 #去掉该参数,password传输可不加密 username: lisi password: 123456 verification: QA2: s_login_info: loginFromServer: 'https://qa-xxx.cn/#/' loginFromSystemCode: S #passwordVersion: 1 #去掉该参数,password传输可不加密 username: zhangsan111 password: 1231234 verification: w_login_info: loginFromServer: 'https://qa-xxx.cn/#/' loginFromSystemCode: S #passwordVersion: 1 #去掉该参数,password传输可不加密 username: lisi222 password: 123456 verification:
3、data/headers.json
内部业务系统ABC均可用s_login_info的用户信息,外部业务系统W用的是w_login_info的用户信息,其实请求体是一样的只是账号密码不一样,所以要分开来。
{ "QA1": { "s_login_headers": { "Content-Type": "application/x-www-form-urlencoded", "Accept": "application/json, text/plain, */*&