From d33e75101d434ccacf63c29e2056a0fb9191b33b Mon Sep 17 00:00:00 2001 From: liguangyu06 <1666071293@qq.com> Date: Wed, 27 Mar 2024 16:36:00 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E4=BE=8B=E6=96=B0=E5=A2=9E=EF=BC=9A?= =?UTF-8?q?=E5=BA=93=E5=AD=98=E5=AE=A2=E6=88=B7=E6=B8=85=E5=8D=95=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E5=AF=BC=E5=85=A5=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...74\345\205\245\351\252\214\350\257\201.py" | 81 ++++++++++++++++++ data/cmdc_33st/data | 6 +- ...\345\205\245\346\250\241\346\235\277.xlsx" | Bin 0 -> 7500 bytes 3 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 "air_case/cmdc_33st/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\346\211\271\351\207\217\345\257\274\345\205\245\351\252\214\350\257\201.air/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\346\211\271\351\207\217\345\257\274\345\205\245\351\252\214\350\257\201.py" create mode 100644 "data/cmdc_files/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" diff --git "a/air_case/cmdc_33st/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\346\211\271\351\207\217\345\257\274\345\205\245\351\252\214\350\257\201.air/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\346\211\271\351\207\217\345\257\274\345\205\245\351\252\214\350\257\201.py" "b/air_case/cmdc_33st/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\346\211\271\351\207\217\345\257\274\345\205\245\351\252\214\350\257\201.air/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\346\211\271\351\207\217\345\257\274\345\205\245\351\252\214\350\257\201.py" new file mode 100644 index 00000000..0d3fe060 --- /dev/null +++ "b/air_case/cmdc_33st/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\346\211\271\351\207\217\345\257\274\345\205\245\351\252\214\350\257\201.air/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\346\211\271\351\207\217\345\257\274\345\205\245\351\252\214\350\257\201.py" @@ -0,0 +1,81 @@ +# -*- encoding=utf8 -*- +__author__ = "liguangyu" + +""" +case_tag:cmdc_api,cmdc库存客户清单批量导入验证,33,33-39,sit,be +主数据平台:后台运营系统库存客户清单批量导入接口 +""" + +from common.common_func import commonFuc +from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin +from common.handle_excel import HandleExcel +import requests +import random +import json +import os + + +module = "cmdc_33st" + +# 第一步登录后台运营系统获取token +username = commonFuc().get_business_data(module, "username_do_be") +password = commonFuc().get_business_data(module, "password_do_be") +# 获取登录后Cmdc_access_token +cmdc_access_token = CmdcDoLogin(username, password).get_token() +headers = commonFuc().get_business_data(module, "json_headers_file", cmdc_access_token) + +# 第二步获取客户列表 +url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url36") +request_body = commonFuc().get_business_data(module, "payload36") +# 发送请求 +result = requests.post(url, json=request_body, headers=headers) +result = json.loads(result.content) + +# 获取随机数 +customer_random = random.randint(0, len(result["data"]["list"]) - 1) +# 获取客户信息 +customerCode = result["data"]["list"][customer_random]["customerCode"] +customerName = result["data"]["list"][customer_random]["customerName"] + +# 获取文件 +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" + +# 将客户信息写入文件中 +excel = HandleExcel(file_path, "Sheet1") +excel.write_data(row=2, column=1, value=customerCode) +excel.write_data(row=2, column=2, value=customerName) + + +# 第三步进行批量导入 +url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url39") + +# 获取文件 +file = open(file_path, "rb") +files = {"file": file} + +""" + + 场景: 库存客户清单批量导入验证 + 用例名称:库存客户清单批量导入验证 + 输出:{"customerCode":"%s"} +""" + +# 发送请求 +result = requests.post(url, files=files, headers=headers) +# 获取接口响应时间 +api_time = float(result.elapsed.total_seconds()) + +# 获取客户信息 +result = json.loads(result.content) +# print(result) +result = {"customerCode": result["data"][0]["customerCode"]} + +# 将接口响应时间添加至result +result["api_time"] = api_time + +# 获取预期结果 +check_dict = commonFuc().get_business_data(module, "checkDict39", customerCode) +# print(check_dict) +# 断言实际结果中是否包含预期结果的内容 +commonFuc().check_result(check_dict, result) diff --git a/data/cmdc_33st/data b/data/cmdc_33st/data index a2dfe2de..fbca3948 100644 --- a/data/cmdc_33st/data +++ b/data/cmdc_33st/data @@ -267,9 +267,13 @@ checkDict37: {"customerCode":"%s"} "url38": "/product/stockRule/exportBusCustomerTemp" #预期结果 -checkDict38: {"customerCode":"%s"} +checkDict38: {"message":"模板下载成功"} +#测试场景39:库存客户清单批量导入验证 +"url39": "/product/stockRule/importBusCustomer" +#预期结果 +checkDict39: {"customerCode":"%s"} diff --git "a/data/cmdc_files/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" "b/data/cmdc_files/\345\272\223\345\255\230\345\256\242\346\210\267\346\270\205\345\215\225\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" new file mode 100644 index 0000000000000000000000000000000000000000..debcd0ee3182c2f5b89fc3bee652f72347b1da0f GIT binary patch literal 7500 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 N>b*5({%KAD{{y9M1)%@{ literal 0 HcmV?d00001 -- GitLab