WebAccountAddWebUser.py 2.38 KB
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/8/13 下午3:55
# @Author : 付孟奇

import unittest, requests
from config.vendorHost import vendor_host
from config.vendorPath import global_path
from util.generate import getTestCase
from util.log import logger
from util.firstLogin import FirstLogin
from util.HandleJson import file_readAPI
from util.HandleJson import file_read_global, file_updata_global


class WebAccountAddWebUser(unittest.TestCase):

    def testFunc(self):
        '''添加web账号'''
        data_list = getTestCase('WEB_api_case.xlsx', '添加web账号')
        for i in range(len(data_list)):
            self.getTest(data_list[i])

    def getTest(self, data):
        tcname = data['tc_name']
        code = int(data['code'])
        username = data['username']
        email = data['email']
        employeeId = data['employeeId']
        name = data['name']
        staffNo = data['staffNo']
        role = data['role']

        api_type = 'sys'

        logger.info('********************【' + tcname + '】接口测试开始!' + '********************')

        headers = {
            'Content-Type': 'application/json',
            'X-Auth-Token': FirstLogin()
        }
        # if config['pro'] =='中美大都会'
        # 之后如果角色可以从接口获取,这里再从接口获取并进行项目判断
        payload = {
            "id": '',
            "username": username,
            "email": email,
            "employeeId": employeeId,
            "name": name,
            "roleId": role,
            "orgId": file_read_global('organization', 'subBranchId'),
            "orgIdList": [int(role)],
            "groupId": '',
            "auditScopeList": [],
            "staffNo": staffNo,
            "role": role
        }

        logger.info('【' + tcname + '】的接口入参为:' + str(payload))

        url = vendor_host + api_type + file_readAPI(api_type, 'addUserUsingPOST')
        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))
            file_updata_global('account', 'web_user', name)
            file_updata_global('account', 'web_email', email)
            logger.info('【' + tcname + '】的接口返回参数为:' + str(res))
        else:
            logger.info(response.text)