#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2021/7/16 下午5:36 # @Author : 付孟奇 import unittest, requests from config.vendorHost import vendor_host from config import vendorList from util.log import logger from util.generate import getTestCase from util.HandleJson import file_readAPI from util.HandleJson import file_updata_global from util.HandleJenkins import config class AppAuthLogin(unittest.TestCase): def testFunc(self): '''app登录''' data_list = getTestCase('A_api_case.xlsx', 'app登录') for j in range(len(data_list)): if data_list[j]['vendor'] == config['pro']: # 处理统一登录和无统一登陆参数问题 self.getTest(data_list[j]) else: logger.info('该case忽略') def getTest(self, data): tcname = data['tc_name'] code = int(data['code']) password = data['password'] username = data['username'] api_type = 'cl' logger.info('********************【' + tcname + '】接口测试开始!' + '********************') headers = { 'Content-Type': 'application/json', } payload = { "username": username, "password": password, "deviceNum": "078424F3-26DE-4A76-BC66-E4CD2C55BB0A" } logger.info('【' + tcname + '】的接口入参为:' + str(payload)) url = vendor_host + api_type + file_readAPI(api_type, 'loginUsingPOST') response = requests.request('POST', url, headers=headers, json=payload) if response.status_code is 200: res = response.json() self.assertEqual(res['code'], code, msg=str(res)) if res['code'] == 0: file_updata_global('app_login', 'token', res['result']['token']) file_updata_global('app_login', 'directlyAgencyName', res['result']['directlyAgencyName']) logger.info('【' + tcname + '】的接口返回参数为:' + str(res)) else: logger.info('【' + tcname + '】的接口返回参数为:' + str(res)) else: logger.error(response.text) if __name__ == '__main__': unittest.main()