# -*- encoding=utf8 -*- __author__ = "liguangyu" """ case_tag:cmdc_api,cmdc查询条件验证_获取补货单列表,31,31-20,sit,be 主数据平台:后台运营系统获取补货单列表接口 """ from common.common_func import commonFuc from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin import datetime import random import requests import json module = "cmdc_31st" # 第一步登录后台运营系统获取token username = commonFuc().get_business_data(module, "username1_be") password = commonFuc().get_business_data(module, "password1_be") # 获取登录后Cmdc_access_token cmdc_access_token = CmdcDoLogin(username, password).get_token() headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token) # 此函数用于当x为none时,进行空字符串替换 def func(x): if x is None: x = "" return x else: return x # 第二步获取补货单列表 url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url17") request_body = commonFuc().get_business_data(module, "payload17") # 发送请求 result = requests.post(url, json=request_body, headers=headers) result = json.loads(result.content) # 生成随机数 rep_random = random.randint(0, len(result["data"]["list"]) - 1) # 获取补货单信息 product_line_code = func(result["data"]["list"][rep_random]["productLineCode"]) pac_no = func(result["data"]["list"][rep_random]["pacNo"]) specifications = func(result["data"]["list"][rep_random]["specifications"]) manufacturer = func(result["data"]["list"][rep_random]["manufacturer"]) material_code = func(result["data"]["list"][rep_random]["materialCode"]) sync_sign = result["data"]["list"][rep_random]["syncSign"] supplier_replenishment_code = func(result["data"]["list"][rep_random]["supplierReplenishmentCode"]) replenishment_code = result["data"]["list"][rep_random]["replenishmentCode"] or_code = func(result["data"]["list"][rep_random]["orCode"]) product_info = result["data"]["list"][rep_random]["productCode"] supplier_info = func(result["data"]["list"][rep_random]["supplierCode"]) customer_info = func(result["data"]["list"][rep_random]["customerCode"]) project_info = func(result["data"]["list"][rep_random]["projectCode"]) creator_name = result["data"]["list"][rep_random]["creatorName"] start_time = result["data"]["list"][rep_random]["createTime"][:10] end_time = datetime.datetime.now().strftime("%Y-%m-%d") # 第三步进行查询条件验证 url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url18") request_body = commonFuc().get_business_data(module, "payload18", product_line_code, pac_no, specifications, manufacturer, material_code, sync_sign, supplier_replenishment_code, replenishment_code, or_code, product_info, supplier_info, customer_info, project_info, creator_name, start_time, end_time) """ 场景: 查询条件验证_获取补货单列表 用例名称:查询条件验证_获取补货单列表 输出:{"replenishmentCode":"%s"} """ # 发送请求 result = requests.post(url, json=request_body, headers=headers) # 获取接口响应时间 api_time = float(result.elapsed.total_seconds()) # 获取补货单信息replenishmentCode result = json.loads(result.content) result = {"replenishmentCode": result["data"]["list"][0]["replenishmentCode"]} # print(result) # 将接口响应时间添加至result result["api_time"] = api_time # 获取预期结果 check_dict = commonFuc().get_business_data(module, "checkDict18", replenishment_code) # print(check_dict) # 断言实际结果中是否包含预期结果的内容 commonFuc().check_result(check_dict, result)