# -*- encoding=utf8 -*- __author__ = "liguangyu" """ case_tag:cmdc_api,cmdc查询条件验证_发货单列表,2294,2294-27,sit,bs 主数据平台:后台运营系统获取发货单列表接口 """ from common.common_func import commonFuc from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin import requests import random import json module = "cmdc_trade" # 第一步登录后台运营系统获取token信息 username = commonFuc().get_business_data(module, "username4") password = commonFuc().get_business_data(module, "password4") # 获取登录后Cmdc_access_token cmdc_access_token = CmdcDoLogin(username, password).get_token() headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token) # 第二步获取发货单列表 url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url25") request_body = commonFuc().get_business_data(module, "payload25") # 发送请求 result = requests.post(url, json=request_body, headers=headers) result = json.loads(result.content) # 此函数用于当x为none时,进行空字符串替换 def func(x): if x is None: x = "" return x else: return x # 生成随机数 out_random = random.randint(0, len(result["data"]["list"]) - 1) # 获取发货单信息 SDDOCO = func(result["data"]["list"][out_random]["SDDOCO"]) customerCode = func(result["data"]["list"][out_random]["customerCode"]) customerName = func(result["data"]["list"][out_random]["customerName"]) demandCode = func(result["data"]["list"][out_random]["demandCode"]) productCode = func(result["data"]["list"][out_random]["productCode"]) optionStr = func(result["data"]["list"][out_random]["optionStr"]) materialCode = func(result["data"]["list"][out_random]["materialCode"]) demandParentCode = func(result["data"]["list"][out_random]["demandParentCode"]) invoiceNo = func(result["data"]["list"][out_random]["invoiceNo"]) productLineName = func(result["data"]["list"][out_random]["productLineName"]) sddcto = func(result["data"]["list"][out_random]["sddcto"]) distributionType = func(result["data"]["list"][out_random]["distributionType"]) demandSubCode = func(result["data"]["list"][out_random]["demandSubCode"]) # 第三步进行条件查询 url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url27") request_body = commonFuc().get_business_data(module, "payload27", demandCode, demandParentCode) # print(request_body) """ 场景: 查询条件验证_发货单列表 用例名称:查询条件验证_发货单列表 输出:{"demandCode":"%s"} """ # 发送请求 result = requests.post(url, json=request_body, headers=headers) # 获取接口响应时间 api_time = float(result.elapsed.total_seconds()) result = json.loads(result.content) print(result) # 获取demandCode result = {"demandCode": result["data"]["list"][0]["demandCode"]} result["api_time"] = api_time # print(result) # 获取预期结果 check_dict = commonFuc().get_business_data(module, "checkDict27", demandCode) # print(check_dict) # 断言实际结果中是否包含预期结果的内容 commonFuc().check_result(check_dict, result)