Commit 5271a37a authored by 周念东's avatar 周念东
Browse files

20240617

parents ced008e1 c3acdd56
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc商品不存在_批量新增商品包装,33,33-22,sit,be
主数据平台:后台运营系统商品包装批量新增接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.handle_excel import HandleExcel
import requests
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)
# 获取文件
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"
# 第二步批量新增商品包装信息
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url22")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
# 发送请求
result = requests.post(url, files=files, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 第三步获取导入日志
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url10")
request_body = commonFuc().get_business_data(module, "payload10")
# 发送请求
result = requests.get(url, params=request_body, headers=headers)
# 获取导入日志信息
result = json.loads(result.content)
endUrl = result["data"]["list"][0]["endUrl"]
# 第四步获取日志说明
url = endUrl
"""
场景:商品不存在_批量新增商品包装
用例名称:商品不存在_批量新增商品包装
输出:{"message":"商品编码不存在或已失效、未上架"}
"""
# 发送请求
result = requests.get(url, 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")
result = {"message": excel.read_data()[0].get("错误原因")}
# 将接口响应时间添加至result
result["api_time"] = api_time
file.close()
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict22")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc商品不存在_按条件删除商品包装,33,33-19,sit,be
主数据平台:后台运营系统按条件删除商品包装接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
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)
# 获取文件
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"
# 第二步批量删除商品包装信息
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url19")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
"""
场景:商品不存在_按条件删除商品包装
用例名称:商品不存在_按条件删除商品包装
输出:{"success":false,"code":"ERROR","message":"101459282345345等商品不存在","data":null,"freshToken":null}
"""
# 发送请求
result = requests.post(url, files=files, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
file.close()
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict19")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc商品包装信息修改更新验证,33,33-6,sit,be
主数据平台:后台运营系统商品包装信息修改更新接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
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", cmdc_access_token)
# 第二步获取商品包装管理列表
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url1")
request_body = commonFuc().get_business_data(module, "payload1")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 生成随机数
package_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取商品包装信息
package_json = result["data"]["list"][package_random]
package_json["modifyTime"] = None
packagingId = result["data"]["list"][package_random]["packagingId"]
# 第三步进行商品包装信息更新操作
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url6")
request_body = package_json
"""
场景: 商品包装信息修改更新验证
用例名称:商品包装信息修改更新验证
输出:{"success":true,"code":"200","message":"OK","data":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict6", packagingId)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc商品包装信息导出验证,33,33-3,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", cmdc_access_token)
# 第二步获取商品包装管理列表
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url1")
request_body = commonFuc().get_business_data(module, "payload1")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 生成随机数
package_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取商品包装信息
productCode = result["data"]["list"][package_random]["productCode"]
# 第三步进行商品包装信息导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url3")
request_body = commonFuc().get_business_data(module, "payload3", productCode)
"""
场景: 商品包装信息导出验证
用例名称:商品包装信息导出验证
输出:{"productCode":"%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, "包装管理")
# print(excel.read_data())
result = {"productCode": excel.read_data()[0].get("商品编码")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict3", productCode)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc商品包装已存在_商品包装新增,33,33-16,sit,be
主数据平台:后台运营系统商品包装新增接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
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", cmdc_access_token)
# 第二步获取商品包装管理列表
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url1")
request_body = commonFuc().get_business_data(module, "payload1")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 生成随机数
package_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取商品包装信息
productCode = result["data"]["list"][package_random]["productCode"]
# 第三步进行商品包装新增
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url16")
request_body = [
{"rowEditStatus": None, "rowId": None, "productCode": productCode, "productId": None, "productName": None,
"specifications": None, "measuringUnitName": None, "measuringUnit": None, "materialCode": "", "productParams": {},
"boxQuantity": None, "boxLength": None, "boxWidth": None, "boxHeight": None, "boxVolume": None,
"grossWeight": None, "totalTowedQuantity": None}]
"""
场景: 商品包装已存在_商品包装新增
用例名称:商品包装已存在_商品包装新增
输出:{"success":false,"code":"ERROR","message":"%s等商品已维护,不可重复新增","data":null,"freshToken":null}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict16", productCode)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc商品包装批量新增模板下载验证,33,33-8,sit,be
主数据平台:后台运营系统商品包装批量新增模板下载接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
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", cmdc_access_token)
# 第二步进行商品包装批量新增模板下载
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url8")
request_body = commonFuc().get_business_data(module, "payload8")
"""
场景: 商品包装批量新增模板下载验证
用例名称:商品包装批量新增模板下载验证
输出:{"message":"模板下载成功"}
"""
# 发送请求
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)
if os.path.exists(file_path):
result = {"message": "模板下载成功"}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict8")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc商品包装按条件删除模板下载验证,33,33-11,sit,be
主数据平台:后台运营系统商品包装按条件删除模板下载接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.handle_excel import HandleExcel
import requests
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", cmdc_access_token)
# 第二步商品包装按条件删除模板下载
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url11")
"""
场景: 商品包装按条件删除模板下载验证
用例名称:商品包装按条件删除模板下载验证
输出:{"message":"模板下载成功"}
"""
# 发送请求
result = requests.get(url, 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, "*商品编码(必填)")
if excel:
result = {"message": "模板下载成功"}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict11")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc存在重复数据_客户批量导入,33,33-52,sit,be
主数据平台:后台运营系统库存客户清单批量导入接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
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)
# 获取文件
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"
# 第三步进行批量导入
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url52")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
"""
场景: 存在重复数据_客户批量导入
用例名称:存在重复数据_客户批量导入
输出:{"success":false,"code":"ERROR","message":"1027813等客户编码存在多个"}
"""
# 发送请求
result = requests.post(url, files=files, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict52")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc客户商品重复删除拦截验证_采购计划,33,33-61,sit,be
主数据平台:后台运营系统采购计划删除接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
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", cmdc_access_token)
# 第二步获取采购计划列表列表
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url61_1")
request_body = commonFuc().get_business_data(module, "payload61_1")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 生成随机数
procure_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取采购计划信息
id = result["data"]["list"][procure_random]["id"]
# 第二步对采购计划商品进行删除操作
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url61")
request_body = commonFuc().get_business_data(module, "payload61", id)
"""
场景: 客户商品重复删除拦截验证_采购计划
用例名称:客户商品重复删除拦截验证_采购计划
输出:{"success":false,"code":"ERROR","message":"采购计划商品已删除"}
"""
# 发送请求
result = requests.get(url, params=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict61")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc库存客户清单导入模板下载验证,33,33-38,sit,be
主数据平台:后台运营系统库存客户清单导入模板下载接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
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", cmdc_access_token)
# 第二步进行库存客户清单导入模板下载
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url38")
"""
场景: 库存客户清单导入模板下载验证
用例名称:库存客户清单导入模板下载验证
输出:{"message":"模板下载成功"}
"""
# 发送请求
result = requests.get(url, 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)
if os.path.exists(file_path):
result = {"message": "模板下载成功"}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict8")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- 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)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc必填字段校验_商品包装信息修改,33,33-24,sit,be
主数据平台:后台运营系统商品包装信息修改更新接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
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", cmdc_access_token)
# 第二步获取商品包装管理列表
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url1")
request_body = commonFuc().get_business_data(module, "payload1")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 生成随机数
package_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取商品包装信息
package_json = result["data"]["list"][package_random]
package_json["modifyTime"] = None
package_json["boxQuantity"] = None
# 第三步进行商品包装信息更新操作
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url24")
request_body = package_json
"""
场景: 必填字段校验_商品包装信息修改
用例名称:必填字段校验_商品包装信息修改
输出:{"success":false,"code":"500","message":"装箱数量不能为空","data":null,"freshToken":null}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict24")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc必填字段校验_商品包装删除,33,33-15,sit,be
主数据平台:后台运营系统商品包装删除接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
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", cmdc_access_token)
# 第三步进行商品包装信息更新操作
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url15")
request_body = []
"""
场景: 商品包装信息修改更新验证
用例名称:商品包装信息修改更新验证
输出:{"success":false,"code":"ERROR","message":"请求数据为空","data":null,"freshToken":null}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict15")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc必填字段校验_商品包装确认删除,33,33-18,sit,be
主数据平台:后台运营系统商品包装确认删除接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
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", cmdc_access_token)
# 第三步进行商品包装信息更新操作
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url18")
request_body = commonFuc().get_business_data(module, "payload18")
"""
场景: 必填字段校验_商品包装确认删除
用例名称:必填字段校验_商品包装确认删除
输出:{"success":false,"code":"ERROR","message":"请求数据为空","data":null,"freshToken":null}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict18")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc必填字段校验_客户批量导入,33,33-50,sit,be
主数据平台:后台运营系统库存客户清单批量导入接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
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)
# 获取文件
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"
# 第三步进行批量导入
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url50")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
"""
场景: 必填字段校验_客户批量导入
用例名称:必填字段校验_客户批量导入
输出:{"success":false,"code":"product-rule-003","message":"导入数据为空,请重新导入"}
"""
# 发送请求
result = requests.post(url, files=files, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict50")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc必填字段校验_按条件删除商品包装,33,33-21,sit,be
主数据平台:后台运营系统按条件删除商品包装接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
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)
# 获取文件
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"
# 第二步批量删除商品包装信息
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url21")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
"""
场景:必填字段校验_按条件删除商品包装
用例名称:必填字段校验_按条件删除商品包装
输出:{"success":false,"code":"ERROR","message":"导入数据为空,请重新导入","data":null,"freshToken":null}
"""
# 发送请求
result = requests.post(url, files=files, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
file.close()
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict21")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc控销核验_套包修改,33,33-54,sit,be
主数据平台:后台运营系统套包更新接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.db.db import mySql
import requests
import json
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", cmdc_access_token)
# 数据库操作
mysql_handle = mySql()
# 获取conf.ini文件中配置的数据库信息
host, port, user, pwd = mysql_handle.getConf(db="cmdc_db_be")
# 修改商品控销属性
sql = "UPDATE `cmdc-product`.ic_product t SET t.isControlSales = 1 WHERE t.productCode = 10145856"
mysql_handle.executeUpdate(host, port, user, pwd, "cmdc-product", sql)
# 第二步进行套包更新操作
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url54")
request_body = commonFuc().get_business_data(module, "payload54")
# print(request_body)
"""
场景: 控销核验_套包修改
用例名称:控销核验_套包修改
输出:{"success":false,"code":"ERROR","message":"是否控销商品不一致,不可组成套包"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict54")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# 进行数据的还原
sql = "UPDATE `cmdc-product`.ic_product t SET t.isControlSales = 0 WHERE t.productCode = 10145856"
mysql_handle.executeUpdate(host, port, user, pwd, "cmdc-product", sql)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc控销核验_套包批量新增,33,33-55,sit,be
主数据平台:后台运营系统套包更新接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.db.db import mySql
import requests
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)
# 数据库操作
mysql_handle = mySql()
# 获取conf.ini文件中配置的数据库信息
host, port, user, pwd = mysql_handle.getConf(db="cmdc_db_be")
# 修改商品控销属性
sql = "UPDATE `cmdc-product`.ic_product t SET t.isControlSales = 1 WHERE t.productCode = 10145856"
mysql_handle.executeUpdate(host, port, user, pwd, "cmdc-product", sql)
# 获取文件
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"
# 第二步批量新增套包
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url55")
request_body = commonFuc().get_business_data(module, "payload55")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
"""
场景: 控销核验_套包批量新增
用例名称:控销核验_套包批量新增
输出:{"success":false}
"""
# 发送请求
result = requests.post(url, files=files, headers=headers, data=request_body)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取导入结果
result = json.loads(result.content)
# print(result)
result = {"success": result["data"]["success"]}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict55")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# 进行数据的还原
sql = "UPDATE `cmdc-product`.ic_product t SET t.isControlSales = 0 WHERE t.productCode = 10145856"
mysql_handle.executeUpdate(host, port, user, pwd, "cmdc-product", sql)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc控销核验_套包新增,33,33-53,sit,be
主数据平台:后台运营系统套包新增接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.db.db import mySql
import requests
import json
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", cmdc_access_token)
# 数据库操作
mysql_handle = mySql()
# 获取conf.ini文件中配置的数据库信息
host, port, user, pwd = mysql_handle.getConf(db="cmdc_db_be")
# 修改商品控销属性
sql = "UPDATE `cmdc-product`.ic_product t SET t.isControlSales = 1 WHERE t.productCode = 10145856"
mysql_handle.executeUpdate(host, port, user, pwd, "cmdc-product", sql)
# 第二步进行套包新增
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url53")
request_body = commonFuc().get_business_data(module, "payload53")
# print(request_body)
"""
场景: 控销核验_套包新增
用例名称:控销核验_套包新增
输出:{"success":false,"code":"ERROR","message":"是否控销商品不一致,不可组成套包"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 将接口响应时间添加至result
result = json.loads(result.content)
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict53")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# 进行数据的还原
sql = "UPDATE `cmdc-product`.ic_product t SET t.isControlSales = 0 WHERE t.productCode = 10145856"
mysql_handle.executeUpdate(host, port, user, pwd, "cmdc-product", sql)
\ No newline at end of file
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc数据重复_批量新增商品包装,33,33-23,sit,be
主数据平台:后台运营系统商品包装批量新增接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.handle_excel import HandleExcel
import requests
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)
# 获取文件
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"
# 第二步批量新增商品包装信息
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url23")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
# 发送请求
result = requests.post(url, files=files, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 第三步获取导入日志
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url10")
request_body = commonFuc().get_business_data(module, "payload10")
# 发送请求
result = requests.get(url, params=request_body, headers=headers)
# 获取导入日志信息
result = json.loads(result.content)
endUrl = result["data"]["list"][0]["endUrl"]
# 第四步获取日志说明
url = endUrl
"""
场景:数据重复_批量新增商品包装
用例名称:数据重复_批量新增商品包装
输出:{"message":"第2,3行,商品重复"}
"""
# 发送请求
result = requests.get(url, 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")
result = {"message": excel.read_data()[0].get("错误原因")}
# 将接口响应时间添加至result
result["api_time"] = api_time
file.close()
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict23")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment