def test_user_save_success(self, request_parameters, expected_response): with allure.step("step1: 步骤1 ==>> 使用正确用户名密码登录系统获取对应token与userId"): token, userId, cookies = getter.get_login_token_cookies(request_parameters['phone'], request_parameters['password'], mobileType=2) with allure.step("step2: 步骤2 ==>> 获取所有部门id列表"): rsp_data1 = getter.user_findDivision(cookies=cookies, mobileType=2, pageNum=1, pageSize=10000, token=token, userid=userId) branch_id = jsonpath.jsonpath(rsp_data1.json(), '$..id') with allure.step("step3: 步骤3 ==>> 根据部门id获取部门下所有项目id"): rsp_data2 = getter.user_findProject(cookies=cookies, divIds=branch_id[0], mobileType=2, pageNum=1, pageSize=10000, token=token, userid=userId) project_ids = jsonpath.jsonpath(rsp_data2.json(), '$..id') with allure.step("step4: 步骤4 ==>> 获取岗位id"): rsp_data3 = getter.user_findJob(cookies=cookies, mobileType=2, pageNum=1, pageSize=10000, token=token, userid=userId) jobId = rsp_data3.json()['data']['list'][0]['id'] with allure.step("step5: 步骤5 ==>> 新增用户"): rsp_branch = getter.user_save(cookies=cookies, divisionId=branch_id[0], jobId=jobId, name='测试用户001', password='******', phone='13200000001', projectIds=project_ids, status=1, token=token, userid=userId, mobileType=2) assert rsp_branch.status_code == 200 assert rsp_branch.json()['data'] is None assert rsp_branch.json()['message'] == expected_response['message'] assert rsp_branch.json()['status'] == expected_response['status']
def test_user_findProject_success(self, request_parameters, expected_response): with allure.step("step1: 步骤1 ==>> 使用正确用户名密码登录系统获取对应token与userId"): token, userId, cookies = getter.get_login_token_cookies( request_parameters['phone'], request_parameters['password'], mobileType=2) with allure.step("step2: 步骤2 ==>> 获取事业部id"): rsp_ids = getter.user_findDivision(cookies=cookies, mobileType=2, pageNum=1, pageSize=1000, token=token, userid=userId) branch_id = rsp_ids.json()['data']['list'][0]['id'] with allure.step("step3: 步骤3 ==>> 查询所有事业部下项目"): rsp_data = getter.user_findProject(cookies=cookies, divIds=[branch_id], pageNum=1, pageSize=1000, mobileType=2, token=token, userid=userId) assert rsp_data.status_code == 200 assert rsp_data.json()['data'] is not None assert rsp_data.json()['message'] == expected_response['message'] assert rsp_data.json()['status'] == expected_response['status']
def test_user_findDivision_success(self, request_parameters, expected_response): with allure.step("step1: 步骤1 ==>> 使用正确用户名密码登录系统获取对应token与userId"): token, userId, cookies = getter.get_login_token_cookies( request_parameters['phone'], request_parameters['password'], mobileType=2) with allure.step("step2: 步骤2 ==>> 查询所有事业部"): rsp_data = getter.user_findDivision(cookies=cookies, mobileType=2, pageNum=1, pageSize=1000, userid=userId, token=token) assert rsp_data.status_code == 200 assert rsp_data.json()['data'] is not None assert rsp_data.json()['message'] == expected_response['message'] assert rsp_data.json()['status'] == expected_response['status'] for i in range(3): assert re.findall(f'测试部门{i+1}', rsp_data.json()) is not None
def add_user(): """ 添加测试用户信息 :return: """ try: rsp_station = getter.user_findJob(cookies=cookies, mobileType=2, pageNum=1, pageSize=1000, token=token, userid=userId) station_id = [] for i in rsp_station.json()['data']['list']: if i['name'] == '测试添加岗位': station_id.append(i['id']) break rsp_branch = getter.user_findDivision(cookies=cookies, mobileType=2, pageNum=1, pageSize=1000, token=token, userid=userId) branch_id = '' for i in rsp_branch.json()['data']['list']: if i['label'] == '测试部门': branch_id = i['id'] break rsp_project = getter.user_findProject(cookies=cookies, divIds=[f"{branch_id}"], pageNum=1, pageSize=1000, mobileType=2, token=token, userid=userId) project_id = '' for i in rsp_project.json()['data']['list']: if i['label'] == '测试项目测试项目': project_id = i['id'] break for i in range(3): getter.user_save(cookies=cookies, divisionId=branch_id, jobId=station_id[0], name=f'测试添加账号{i+1}', password='******', phone='13100000002', status=1, mobileType=2, token=token, userid=userId, projectIds=[project_id]) yield rsp_list = getter.user_list(cookies=cookies, mobileType=2, pageNum=1, pageSize=1000, token=token, userid=userId) for i in rsp_list.json()['data']['list']: if i['name'] == f'测试添加账号{i+1}': delete_userId = i['id'] getter.user_delete(cookies=cookies, mobileType=2, id=[delete_userId], token=token, userid=userId) except Exception as e: logger.error(f"添加项目前置执行失败,错误为{e}")
def test_user_save_fail(self, request_parameters, expected_response): with allure.step("step1: 步骤1 ==>> 使用正确用户名密码登录系统获取对应token与userId"): token, userId, cookies = getter.get_login_token_cookies(request_parameters['phone'], request_parameters['password'], mobileType=2) with allure.step("step2: 步骤2 ==>> 获取所有部门id列表"): if request_parameters['addInfo'] == '事业部未传': branch_id = [] else: rsp_data1 = getter.user_findDivision(cookies=cookies, mobileType=2, pageNum=1, pageSize=10000, token=token, userid=userId) branch_id = jsonpath.jsonpath(rsp_data1.json(), '$..id') with allure.step("step3: 步骤3 ==>> 根据部门id获取部门下所有项目id"): if request_parameters['addInfo'] == '项目权限未传': project_ids = [] elif request_parameters['addInfo'] == '事业部与所选项目不符合': rsp_data2 = getter.user_findProject(cookies=cookies, divIds=branch_id[1], mobileType=2, pageNum=1, pageSize=10000, token=token, userid=userId) project_ids = jsonpath.jsonpath(rsp_data2.json(), '$..id') else: rsp_data2 = getter.user_findProject(cookies=cookies, divIds=branch_id[0], mobileType=2, pageNum=1, pageSize=10000, token=token, userid=userId) project_ids = jsonpath.jsonpath(rsp_data2.json(), '$..id') with allure.step("step4: 步骤4 ==>> 获取岗位id"): if request_parameters['addInfo'] == '岗位id系统中不存在': jobId = '123123123123432' elif request_parameters['addInfo'] == '岗位未传': jobId = '' else: rsp_data3 = getter.user_findJob(cookies=cookies, mobileType=2, pageNum=1, pageSize=10000, token=token, userid=userId) jobId = rsp_data3.json()['data']['list'][0]['id'] with allure.step("step5: 步骤5 ==>> 新增用户"): if request_parameters['addInfo'] == '用户名未传': rsp_branch = getter.user_save(cookies=cookies, divisionId=branch_id[0], jobId=jobId, name='', password='******', phone='13200000001', projectIds=project_ids, status=1, token=token, userid=userId, mobileType=2) elif request_parameters['addInfo'] == '手机号未传': rsp_branch = getter.user_save(cookies=cookies, divisionId=branch_id[0], jobId=jobId, name='测试用户001', password='******', phone='', projectIds=project_ids, status=1, token=token, userid=userId, mobileType=2) elif request_parameters['addInfo'] == '手机号格式不是手机号': rsp_branch = getter.user_save(cookies=cookies, divisionId=branch_id[0], jobId=jobId, name='测试用户001', password='******', phone='19864800001', projectIds=project_ids, status=1, token=token, userid=userId, mobileType=2) elif request_parameters['addInfo'] == '手机号重复': rsp_branch = getter.user_save(cookies=cookies, divisionId=branch_id[0], jobId=jobId, name='测试用户001', password='******', phone='13168775547', projectIds=project_ids, status=1, token=token, userid=userId, mobileType=2) elif request_parameters['addInfo'] == '密码未传': rsp_branch = getter.user_save(cookies=cookies, divisionId=branch_id[0], jobId=jobId, name='测试用户001', password='', phone='13200000001', projectIds=project_ids, status=1, token=token, userid=userId, mobileType=2) elif request_parameters['addInfo'] == '在职状态未传': rsp_branch = getter.user_save(cookies=cookies, divisionId=branch_id[0], jobId=jobId, name='测试用户001', password='******', phone='13200000001', projectIds=project_ids, status='', token=token, userid=userId, mobileType=2) else: rsp_branch = getter.user_save(cookies=cookies, divisionId=branch_id[0], jobId=jobId, name='测试用户001', password='******', phone='13200000001', projectIds=project_ids, status=1, token=token, userid=userId, mobileType=2) assert rsp_branch.status_code == 200 assert rsp_branch.json()['data'] is None assert rsp_branch.json()['message'] == expected_response['message'] assert rsp_branch.json()['status'] == expected_response['status']
from API.api_get_data import getter import jsonpath token, userId, cookies = getter.get_login_token_cookies('13168775547', '123', 2) # print(token, userId) rsp_data1 = getter.user_findDivision(cookies=cookies, pageNum=1, pageSize=10000, mobileType=2, token=token, userid=userId) # print(rsp_data1.json()) branch_id = jsonpath.jsonpath(rsp_data1.json(), '$..id') print(branch_id) rsp_data2 = getter.user_findProject(cookies=cookies, divIds=branch_id[0], pageNum=1, mobileType=2, pageSize=10000, token=token, userid=userId) project_ids = jsonpath.jsonpath(rsp_data2.json(), '$..id') print(project_ids)