def test_update_ticket_3(self, payload): '''编辑拆卸工单''' payload['path'] = payload['path'].format(Tickets.ticket3_id) payload['params']['faults'][0]['id'] = Tickets.ticket3_device_id payload['params']['faults'][0]['ticket_id'] = Tickets.ticket3_id payload['params']['faults'][0]['fault_time'] = Common.format_timestamp() + 100000000 Common.check(self, payload)
def test_bind_vr_home(self, payload): """绑定VR资源""" payload['path'] = payload['path'].format(ClientsDetailPage.client_id, ClientsDetailPage.vr_home_ids) payload['params']['vr_resource_id'] = 'brenda'.join( str(random.randint(1, 10000))) Common.check(self, payload)
def test_get_solutions(self, payload): '''获取二级故障下的解决方案列表''' for fault in Tickets.second_faults: tmp = payload.copy() tmp['path'] = tmp['path'].format(fault) tmp['params']['fault_id'] = str(fault) Common.check(self, tmp)
def accept_ticket(self, ticket_id, payload): '''确定预约时间''' tmp = payload.copy() tmp['path'] = tmp['path'].format(ticket_id) tmp['params']['appointment_time'] = Common.format_timestamp() tmp['params']['ticket_id'] = ticket_id Common.check(self, tmp)
def test_get_define_fault(self, payload): '''获取最后一次工单错误解决方案''' payload['path'] = payload['path'].format(Tickets.ticket2_id) payload['params']['ticket_id'] = Tickets.ticket2_id payload['params']['room_id'] = Tickets.ticket2_room_id payload['params']['device_id'] = Tickets.ticket2_devices_device_id Common.check(self, payload)
def test_define_fault(self, payload): '''确定故障信息''' payload['path'] = payload['path'].format(Tickets.ticket2_id) payload['params']['faults'][0]['room_id'] = Tickets.ticket2_room_id payload['params']['faults'][0]['device_id'] = Tickets.ticket2_devices_device_id payload['params']['faults'][0]['id'] = Tickets.ticket2_device_id payload['params']['ticket_id'] = Tickets.ticket2_id Common.check(self, payload)
def test_add_room(self, payload): '''添加房源房间''' if payload['desc'] == '添加分散式房源房间': payload['path'] = payload['path'].format(Homes.home_id) elif payload['desc'] == '添加集中式房源房间': payload['path'] = payload['path'].format(Homes.home_id_2) else: payload['path'] = payload['path'].format(Homes.home_id) Common.check(self, payload)
def test_get_lock_setting(self, payload): '''获取安全配置''' # 房间 if payload['params']['type'] == 'room': payload['params']['value'] = payload['params']['value'].format(Homes.room_id) # 房源 elif payload['params']['type'] == 'home': payload['params']['value'] = payload['params']['value'].format(Homes.home_id) Common.check(self, payload)
def test_006_update_role(self, payload): '''更新角色''' Setting.update_role_name = 'Update' + Setting.role_name payload['path'] = payload['path'].format(Setting.role_id) payload['params']['roleId'] = Setting.role_id payload['params']['name'] = Setting.update_role_name payload['params']['roleIds'] = self.random_roles()[0] payload['params']['permissionIds'] = self.random_roles()[1] Common.check(self, payload)
def test_004_update_user(self, payload): '''更新用户''' User.user_name = 'Update{}'.format(User.user_name) User.phone = '1{}'.format(Common.format_time()[4:]) User.role_ids = Common.random_list(User.role_ids) payload['path'] = payload['path'].format(User.user_id) payload['params']['userName'] = User.user_name payload['params']['roleIds'] = User.role_ids payload['params']['phone'] = User.phone Common.check(self, payload) self.test_003_get_user_details_test_001_get_user_details()
def test_get_room_list(self, payload): '''获取房间列表''' if payload['desc'] == '获取分散式房源下房间列表': payload['path'] = payload['path'].format(Homes.home_id) payload['check_res_data'] = payload['check_res_data'].format(Homes.home_id) res = Common.check(self, payload) Homes.room_id = res.json().get('result')[1].get('id') elif payload['desc'] == '获取集中式房源下房间列表': payload['path'] = payload['path'].format(Homes.home_id_2) payload['check_res_data'] = payload['check_res_data'].format(Homes.home_id_2) res = Common.check(self, payload) Homes.room_id_2 = res.json().get('result')[1].get('id') else: payload['path'] = payload['path'].format(Homes.home_id) payload['check_res_data'] = payload['check_res_data'].format(Homes.home_id) Common.check(self, payload)
def test_get_room_charge_list(self, payload): '''获取房间充值记录列表''' payload['path'] = payload['path'].format(Homes.room_id) payload['params']['startTime'] = Common.format_timestamp(1000, -5) payload['params']['endTime'] = Common.format_timestamp() res = Common.check(self, payload) self.assertEqual(res.status_code, 200)
def client_vr_homes(self, client_id, is_vr_home, payload): """VR房源""" tmp = payload.copy() tmp['path'] = tmp['path'].format(client_id) tmp['params']['is_vr_home'] = is_vr_home res = Common.check(self, tmp) return res
def test_add_client(self, payload): """添加商户""" Common.rerun_case(self, 'test_common_test_clients_optional_permissions_test_common') Common.rerun_case(self, 'test_common_test_clients_business_test_common') res = Common.check(self, payload) if res.json().get('err_msg') == 'ok': Clients.new_client_id = res.json().get('result').get('client_id')
def test_add_ticket_2(self, payload): '''调用saasapi接口增加维修工单以便后面验证客服受理接口''' host = 'https://qa-saas.dding.net' payload['params']['faults'][0]['fault_time'] = Common.format_timestamp() res = Common.check(self, payload, host) Tickets.ticket2_id = res.json().get('result').get('id') Tickets.ticket2_sn = res.json().get('result').get('ticket_sn')
def test_004_roles_contain(self, payload): '''角色从属关系''' payload['path'] = payload['path'].format(Setting.role_id) res = Common.check(self, payload) tmp = [i.get('id') for i in res.json().get('data')] for i in Setting.role_ids: self.assertIn(i, tmp, msg=Setting.role_ids)
def show_ticket(self, ticket_id, service_type, payload): '''工单详情''' tmp = payload.copy() tmp['path'] = tmp['path'].format(ticket_id) tmp['params']['service_type'] = service_type tmp['params']['ticket_id'] = ticket_id res = Common.check(self, tmp) return res
def test_003_add_role(self, payload): '''新增角色''' Setting.role_name = 'AutoTest{}'.format(Common.format_time()) Setting.role_ids = self.random_roles()[0] payload['params']['name'] = Setting.role_name payload['params']['roleIds'] = Setting.role_ids payload['params']['permissionIds'] = self.random_roles()[1] res = Common.check(self, payload) Setting.role_id = res.json().get('data').get('id')
def test_002_permissions_by_id(self, payload): '''根据id查询角色对应权限''' path = payload['path'] role_ids = [role.get('id') for role in Setting.roles] roles_permissions = [] for role_id in role_ids: payload['path'] = path.format(role_id) res = Common.check(self, payload) roles_permissions.append({'role_id': role_id, 'role_permission': [permission.get('id') for permission in res.json().get('data')]}) Setting.roles_permissions = roles_permissions
def test_002_add_user(self, payload): '''创建用户''' User.user_name = 'AutoTest{}'.format(Common.format_time()) User.phone = '1{}'.format(Common.format_time()[4:]) User.role_ids = Common.random_list(User.role_ids) payload['params']['userName'] = User.user_name payload['params']['roleIds'] = User.role_ids payload['params']['phone'] = User.phone res = Common.check(self, payload) User.user_id = res.json().get('data').get('id') User.user_status = 1
def test_add_home(self, payload): '''添加房源''' Homes.home_name = Homes.home_number = 'AutoTest{}'.format(Common.format_date()) payload['params']['home_name'] = payload['params']['number'] = Homes.home_number res = Common.check(self, payload) # 分散式 if payload['params']['home_type'] == 1 and payload['check_res_code'] == 0: Homes.home_id = res.json().get('result').get('home_id') # 集中式 elif payload['params']['home_type'] == 2 and payload['check_res_code'] == 0: Homes.home_id_2 = res.json().get('result').get('home_id') time.sleep(1)
def test_add_ticket_1(self, payload): '''增加新装工单''' payload['params']['subscribe']['expected_time'] = Common.format_timestamp() res = Common.check(self, payload) if payload['desc'] == '增加新装工单': Tickets.ticket1_id = res.json().get('result').get('id') Tickets.ticket1_sn = res.json().get('result').get('ticket_sn') elif payload['desc'] == '增加无网关门锁新装工单': Tickets.ticket1_lock_id = res.json().get('result').get('id') Tickets.ticket1_lock_sn = res.json().get('result').get('ticket_sn') else: pass
def test_get_fault_id(self, payload): '''获取故障码列表''' faults = [1, 2, 3, 5, 6, 7] # 1网关 2门锁 3电表 5水表网关 6/7水表 # 二级故障id Tickets.second_faults = [] for fault in faults: tmp = payload.copy() tmp['path'] = tmp['path'].format(fault) tmp['params']['device_type'] = str(fault) res = Common.check(self, tmp) for i in res.json().get('result'): for j in i.get('data'): Tickets.second_faults.append(j.get('id')) print(Tickets.second_faults)
def test_003_get_user_details(self, payload): '''获取用户详情''' payload['path'] = payload['path'].format(User.user_id) res = Common.check(self, payload) self.assertEqual(User.user_name, res.json().get('data').get('userName'), msg=res.json()) self.assertEqual(User.phone, res.json().get('data').get('phone'), msg=res.json()) self.assertEqual(User.user_status, res.json().get('data').get('status'), msg=res.json()) self.assertEqual(sorted(User.role_ids), sorted([ role.get('id') for role in res.json().get('data').get('roles') ]), msg=res.json())
def test_005_user_by_store(self, payload): '''门店下用户列表''' payload['path'] = payload['path'].format(Store.store_id) Common.check(self, payload)
def test_004_store_house(self, payload): '''门店房源列表''' payload['path'] = payload['path'].format(Store.store_id) Common.check(self, payload)
def test_003_store_info(self, payload): '''门店详情''' Store.store_name = 'Update{}'.format(Store.store_name) payload['path'] = payload['path'].format(Store.store_id) res = Common.check(self, payload) self.assertEqual(Store.update_store_name, res.json().get('data').get('storeName'), msg=res.json())
def test_002_update_store(self, payload): '''编辑门店''' Store.update_store_name = 'Update{}'.format(Store.store_name) payload['path'] = payload['path'].format(Store.store_id) payload['params']['storeName'] = payload['params']['storeName'].format(Store.update_store_name) Common.check(self, payload)
def test_001_add_store(self, payload): '''新增门店''' Store.store_name = 'AutoTest{}'.format(Common.format_time()) payload['params']['storeName'] = Store.store_name res = Common.check(self, payload) Store.store_id = res.json().get('data').get('id')
def test_common(self, payload): '''通用测试''' Common.check(self, payload)