diff --git "a/air_case/cmdc_31st/\350\241\245\350\264\247\345\215\225\345\257\274\345\207\272\351\252\214\350\257\201.air/\350\241\245\350\264\247\345\215\225\345\257\274\345\207\272\351\252\214\350\257\201.py" "b/air_case/cmdc_31st/\350\241\245\350\264\247\345\215\225\345\257\274\345\207\272\351\252\214\350\257\201.air/\350\241\245\350\264\247\345\215\225\345\257\274\345\207\272\351\252\214\350\257\201.py" new file mode 100644 index 0000000000000000000000000000000000000000..9427e99461650794c543fa068af68e3f676e548b --- /dev/null +++ "b/air_case/cmdc_31st/\350\241\245\350\264\247\345\215\225\345\257\274\345\207\272\351\252\214\350\257\201.air/\350\241\245\350\264\247\345\215\225\345\257\274\345\207\272\351\252\214\350\257\201.py" @@ -0,0 +1,72 @@ +# -*- 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 +from common.handle_excel import HandleExcel +import random +import requests +import json +import os + + +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) + +# 第二步获取补货单列表 +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) +# 获取补货单信息 +replenishment_code = result["data"]["list"][rep_random]["replenishmentCode"] + +# 第三步补货单导出 +url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url21") +request_body = commonFuc().get_business_data(module, "payload21", replenishment_code) + +""" + 场景: 补货单导出验证 + 用例名称:补货单导出验证 + 输出:{"replenishmentCode":"%s"} +""" + +# 发送请求 +result = requests.post(url, json=request_body, headers=headers) +# 获取接口响应时间 +api_time = float(result.elapsed.total_seconds()) +# 获取文件 +BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))) +file_path = BASE_DIR + "/data/cmdc_files/补货单导出.xlsx" + +# 获取到导出文件存入cmdc_files文件中 +with open(file_path, 'wb') as f: + f.write(result.content) + +# 获取文件中补货单号 +excel = HandleExcel(file_path, "Sheet1") +# print(excel.read_data()) +result = {"replenishmentCode": excel.read_data()[0].get("补货单号")} +# print(result) +result["api_time"] = api_time + +# 获取预期结果 +check_dict = commonFuc().get_business_data(module, "checkDict21", replenishment_code) +# print(check_dict) +# 断言实际结果中是否包含预期结果的内容 +commonFuc().check_result(check_dict, result) diff --git a/data/cmdc_31st/data b/data/cmdc_31st/data index 04e2bcb52510786b962d481ae98dc1015f0791c3..b99e1fc8886504cca085a485e374254d916717e0 100644 --- a/data/cmdc_31st/data +++ b/data/cmdc_31st/data @@ -162,7 +162,11 @@ checkDict19: {"success":true,"code":"200","message":"OK"} #预期结果 checkDict20: {"replenishmentCode":"%s"} - +#测试场景二十一:补货单导出验证 +"url21": "/order/public/replenishmentOrders/exportExcel" +"payload21": {"pageSize":10,"pageStart":1,"replenishmentCode":"%s","type":"0"} +#预期结果 +checkDict21: {"replenishmentCode":"%s"}