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

20240617

parents ced008e1 c3acdd56
......@@ -27,7 +27,7 @@ class CmdcDoLogin():
uuid_handle = uuid.uuid4()
# 获取验证码报文
param = {"uuid": uuid_handle}
# 获取多彩商城登录页面获取验证码地址
# 获取登录页面获取验证码地址
code_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "getVerifyCode_url")
# code_url = "https://service-slb.cmic.com.cn/sso/getVerifyCode"
# 发送请求获取验证码
......@@ -40,7 +40,7 @@ class CmdcDoLogin():
code_path = BASE_DIR + "/多采商城登录.air/verifycode.png"
# 识别并获取验证码
code = VerificationCodeOcr(code_path, "rainbow123", "rainbow123").base64_api()
# 获取多彩商城登录地址
# 获取登录地址
cmdc_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "do_login_url")
# cmdc_url = "https://service-slb.cmic.com.cn/sso/mallLogin"
# 组装请求报文
......
......@@ -30,7 +30,7 @@ class CmdcDoLogin():
uuid_handle = uuid.uuid4()
# 获取验证码报文
param = {"uuid": uuid_handle}
# 获取多彩商城登录页面获取验证码地址
# 获取登录页面获取验证码地址
code_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "getVerifyCode_url")
# code_url = "https://service-slb.cmic.com.cn/sso/getVerifyCode"
# 发送请求获取验证码
......@@ -44,7 +44,7 @@ class CmdcDoLogin():
f.write(result.content)
# 识别并获取验证码
code = VerificationCodeOcr(code_path, "rainbow123","rainbow123").base64_api()
# 获取多彩商城登录地址
# 获取登录地址
cmdc_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "do_login_url")
# cmdc_url = "https://service-slb.cmic.com.cn/sso/doLogin"
md = hashlib.md5(self.password.encode()) # 创建md5对象
......
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_分销商库存上报列表,2300,2300-5,sit,be
主数据平台:后台运营系统获取分销商库存上报列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url4")
request_body = commonFuc().get_business_data(module, "payload4")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
customer_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取分销商库存信息
goodsInfo = result["data"]["list"][customer_random]["customerCode"]
source = (
result["data"]["list"][customer_random]["source"] if result["data"]["list"][customer_random]["source"] else "")
statisticYear = result["data"]["list"][customer_random]["statisticYear"]
statisticMonth = result["data"]["list"][customer_random]["statisticMonth"]
# 第三步进行列表查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url5")
request_body = commonFuc().get_business_data(module, "payload5", goodsInfo, source, statisticYear, statisticMonth)
"""
场景: 列表查询条件验证_分销商库存上报列表
用例名称:列表查询条件验证_分销商库存上报列表
输出:{"customerCode":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取分销商库存信息
result = json.loads(result.content)
result = {"customerCode": result["data"]["list"][0]["customerCode"]}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict5", goodsInfo)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_医院列表,2300,2300-8,sit,be
主数据平台:后台运营系统获取医院列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url7")
request_body = commonFuc().get_business_data(module, "payload7")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
hosp_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取医院信息
statisticProvince = result["data"]["list"][hosp_random]["statisticProvince"]
statisticRegion = result["data"]["list"][hosp_random]["statisticRegion"]
hospInfo = result["data"]["list"][hosp_random]["hospCode"]
# 第三步进行列表条件查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url8")
request_body = commonFuc().get_business_data(module, "payload8", statisticProvince, statisticRegion, hospInfo)
"""
场景: 列表查询条件验证_医院列表
用例名称:列表查询条件验证_医院列表
输出:{"hospInfo":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取医院信息
result = json.loads(result.content)
result = {"hospInfo": result["data"]["list"][0]["hospCode"]}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict8", hospInfo)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_医院植入上报列表,2300,2300-2,sit,be
主数据平台:后台运营系统获取医院植入上报列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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)
if result["data"]["list"]:
# 生成随机数
hosp_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取医院植入上报信息
source = (result["data"]["list"][hosp_random]["source"] if result["data"]["list"][hosp_random]["source"] else "")
statisticYear = result["data"]["list"][hosp_random]["statisticYear"]
statisticMonth = result["data"]["list"][hosp_random]["statisticMonth"]
invoiceCode = result["data"]["list"][hosp_random]["invoiceCode"]
hospInfo = result["data"]["list"][hosp_random]["hospitalCode"]
goodsInfo = result["data"]["list"][hosp_random]["customerCode"]
# 第三步进行列表查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url2")
request_body = commonFuc().get_business_data(module, "payload2", source, statisticYear, statisticMonth,
invoiceCode, hospInfo, goodsInfo)
# print(request_body)
"""
场景: 列表查询条件验证_医院植入上报列表
用例名称:列表查询条件验证_医院植入上报列表
输出:{"invoiceCode":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取医院植入上报信息
result = json.loads(result.content)
# print(result)
result = {"invoiceCode": result["data"]["list"][0]["invoiceCode"]}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict2", invoiceCode)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_发票截至日期信息列表,2300,2300-24,sit,be
主数据平台:后台运营系统获取发票截至日期信息列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url23")
request_body = commonFuc().get_business_data(module, "payload23")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
date_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取发票截至日期信息
statisticMonth = result["data"]["list"][date_random]["statisticMonth"]
statisticYear = result["data"]["list"][date_random]["statisticYear"]
# 第三步进行列表条件查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url24")
request_body = commonFuc().get_business_data(module, "payload24", statisticMonth, statisticYear)
"""
场景: 列表查询条件验证_发票截至日期信息列表
用例名称:列表查询条件验证_发票截至日期信息列表
输出:{"statisticYear":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取发票截至日期信息
result = json.loads(result.content)
result = {"statisticYear": result["data"]["list"][0]["statisticYear"]}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict24", statisticYear)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_商品信息列表,2300,2300-21,sit,be
主数据平台:后台运营系统获取商品信息列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url20")
request_body = commonFuc().get_business_data(module, "payload20")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
good_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取商品信息
goodsInfo = result["data"]["list"][good_random]["productCode"]
productLineName = result["data"]["list"][good_random]["productLineName"]
keynoteSpec = result["data"]["list"][good_random]["keynoteSpec"]
# 第三步进行列表条件查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url21")
request_body = commonFuc().get_business_data(module, "payload21", goodsInfo, productLineName, keynoteSpec)
"""
场景: 列表查询条件验证_商品信息列表
用例名称:列表查询条件验证_商品信息列表
输出:{"goodsInfo":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取商品信息
result = json.loads(result.content)
result = {"goodsInfo": result["data"]["list"][0]["productCode"]}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict21", goodsInfo)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_大区省份列表,2300,2300-13,sit,be
主数据平台:后台运营系统获取大区省份信息列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url12")
request_body = commonFuc().get_business_data(module, "payload12")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
pro_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取大区省份信息
statisticProvince = result["data"]["list"][pro_random]["statisticProvince"]
statisticRegion = result["data"]["list"][pro_random]["statisticRegion"]
# 第三步进行列表条件查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url13")
request_body = commonFuc().get_business_data(module, "payload13", statisticProvince, statisticRegion)
"""
场景: 列表查询条件验证_大区省份列表
用例名称:列表查询条件验证_大区省份列表
输出:{"statisticProvince":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取大区省份信息
result = json.loads(result.content)
result = {"statisticProvince": result["data"]["list"][0]["statisticProvince"]}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict13", statisticProvince)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_省份植入指标信息列表,2300,2300-16,sit,be
主数据平台:后台运营系统获取省份植入指标信息列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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 = commonFuc().get_business_data(module, "payload15")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
pro_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取省份植入信息
statisticProvince = result["data"]["list"][pro_random]["statisticProvince"]
statisticMonth = result["data"]["list"][pro_random]["statisticMonth"]
statisticYear = result["data"]["list"][pro_random]["statisticYear"]
# 第三步进行列表条件查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url16")
request_body = commonFuc().get_business_data(module, "payload16", statisticProvince, statisticMonth, statisticYear)
"""
场景: 列表查询条件验证_省份植入指标信息列表
用例名称:列表查询条件验证_省份植入指标信息列表
输出:{"statisticProvince":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取省份植入信息
result = json.loads(result.content)
result = {"statisticProvince": result["data"]["list"][0]["statisticProvince"]}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict16", statisticProvince)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_返利信息列表,2300,2300-27,sit,be
主数据平台:后台运营系统获取返利信息列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import random
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url26")
request_body = commonFuc().get_business_data(module, "payload26")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
good_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取返利信息
goodsInfo = (
result["data"]["list"][good_random]["customerCode"] if result["data"]["list"][good_random]["customerCode"] else "")
statisticQuarter = result["data"]["list"][good_random]["statisticQuarter"]
statisticYear = result["data"]["list"][good_random]["statisticYear"]
# 第三步进行列表条件查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url27")
request_body = commonFuc().get_business_data(module, "payload27", goodsInfo, statisticQuarter, statisticYear)
"""
场景: 列表查询条件验证_返利信息列表
用例名称:列表查询条件验证_返利信息列表
输出:{"statisticQuarter":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取返利信息
result = json.loads(result.content)
result = {"statisticQuarter": result["data"]["list"][0]["statisticQuarter"]}
# print(result)
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict27", statisticQuarter)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc批量导出功能验证_分销商库存上报列表,2300,2300-6,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_ls"
# 第一步登录后台运营系统获取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, "url4")
request_body = commonFuc().get_business_data(module, "payload4")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
customer_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取分销商库存信息
goodsInfo = result["data"]["list"][customer_random]["customerCode"]
# 第三步进行数据导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url6")
request_body = commonFuc().get_business_data(module, "payload6", goodsInfo)
"""
场景: 批量导出功能验证_分销商库存上报列表
用例名称:批量导出功能验证_分销商库存上报列表
输出:{"customerCode":"%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")
result = {"customerCode": excel.read_data()[0].get("分销商编码")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict6", goodsInfo)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc批量导出功能验证_医院列表,2300,2300-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 random
import json
import os
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url7")
request_body = commonFuc().get_business_data(module, "payload7")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
hosp_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取医院信息
hospInfo = result["data"]["list"][hosp_random]["hospCode"]
# 第三步进行信息导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url11")
request_body = commonFuc().get_business_data(module, "payload11", hospInfo)
"""
场景: 批量导出功能验证_医院列表
用例名称:批量导出功能验证_医院列表
输出:{"hospInfo":"%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")
result = {"hospInfo": excel.read_data()[0].get("医院编号")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict11", hospInfo)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc批量导出功能验证_医院植入上报列表,2300,2300-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_ls"
# 第一步登录后台运营系统获取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)
if result["data"]["list"]:
# 生成随机数
hosp_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取医院植入上报信息
invoiceCode = result["data"]["list"][hosp_random]["invoiceCode"]
# 第三步进行数据导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url3")
request_body = commonFuc().get_business_data(module, "payload3", invoiceCode)
# print(request_body)
"""
场景: 批量导出功能验证_医院植入上报列表
用例名称:批量导出功能验证_医院植入上报列表
输出:{"invoiceCode":"%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")
result = {"invoiceCode": excel.read_data()[0].get("发票号码")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict3", invoiceCode)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc批量导出功能验证_发票截至日期信息列表,2300,2300-25,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_ls"
# 第一步登录后台运营系统获取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, "url23")
request_body = commonFuc().get_business_data(module, "payload23")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
date_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取发票截至日期信息
statisticMonth = result["data"]["list"][date_random]["statisticMonth"]
statisticYear = result["data"]["list"][date_random]["statisticYear"]
# 第三步进行信息批量导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url25")
request_body = commonFuc().get_business_data(module, "payload25", statisticMonth, statisticYear)
"""
场景: 批量导出功能验证_发票截至日期信息列表
用例名称:批量导出功能验证_发票截至日期信息列表
输出:{"statisticYear":"%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")
result = {"statisticYear": excel.read_data()[0].get("所属年度")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict25", statisticYear)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc批量导出功能验证_商品信息列表,2300,2300-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 random
import json
import os
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url20")
request_body = commonFuc().get_business_data(module, "payload20")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
good_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取商品信息
goodsInfo = result["data"]["list"][good_random]["productCode"]
productLineName = result["data"]["list"][good_random]["productLineName"]
keynoteSpec = result["data"]["list"][good_random]["keynoteSpec"]
# 第三步进行商品信息批量导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url22")
request_body = commonFuc().get_business_data(module, "payload22", goodsInfo, productLineName, keynoteSpec)
"""
场景: 批量导出功能验证_商品信息列表
用例名称:批量导出功能验证_商品信息列表
输出:{"goodsInfo":"%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")
result = {"goodsInfo": excel.read_data()[0].get("商品编码")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict22", goodsInfo)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc批量导出功能验证_大区省份列表,2300,2300-14,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_ls"
# 第一步登录后台运营系统获取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, "url12")
request_body = commonFuc().get_business_data(module, "payload12")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
pro_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取大区省份信息
statisticProvince = result["data"]["list"][pro_random]["statisticProvince"]
statisticRegion = result["data"]["list"][pro_random]["statisticRegion"]
# 第三步进行列表信息导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url14")
request_body = commonFuc().get_business_data(module, "payload14", statisticProvince, statisticRegion)
# print(request_body)
"""
场景: 批量导出功能验证_大区省份列表
用例名称:批量导出功能验证_大区省份列表
输出:{"statisticProvince":"%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")
result = {"statisticProvince": excel.read_data()[0].get("省份")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict14", statisticProvince)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc批量导出功能验证_省份植入指标信息列表,2300,2300-17,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_ls"
# 第一步登录后台运营系统获取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 = commonFuc().get_business_data(module, "payload15")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
pro_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取省份植入信息
statisticProvince = result["data"]["list"][pro_random]["statisticProvince"]
statisticMonth = result["data"]["list"][pro_random]["statisticMonth"]
statisticYear = result["data"]["list"][pro_random]["statisticYear"]
# 第三步进行信息批量导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url17")
request_body = commonFuc().get_business_data(module, "payload17", statisticProvince, statisticMonth, statisticYear)
"""
场景: 批量导出功能验证_省份植入指标信息列表
用例名称:批量导出功能验证_省份植入指标信息列表
输出:{"statisticProvince":"%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")
result = {"statisticProvince": excel.read_data()[0].get("省份")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict17", statisticProvince)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc批量导出功能验证_返利信息列表,2300,2300-28,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_ls"
# 第一步登录后台运营系统获取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, "url26")
request_body = commonFuc().get_business_data(module, "payload26")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
if result["data"]["list"]:
# 生成随机数
good_random = random.randint(0, len(result["data"]["list"]) - 1)
# 获取返利信息
goodsInfo = (
result["data"]["list"][good_random]["customerCode"] if result["data"]["list"][good_random]["customerCode"] else "")
statisticQuarter = result["data"]["list"][good_random]["statisticQuarter"]
statisticYear = result["data"]["list"][good_random]["statisticYear"]
# 第三步返利信息批量导出
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url28")
request_body = commonFuc().get_business_data(module, "payload28", goodsInfo, statisticQuarter, statisticYear)
"""
场景: 批量导出功能验证_返利信息列表
用例名称:批量导出功能验证_返利信息列表
输出:{"statisticQuarter":"%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")
result = {"statisticQuarter": excel.read_data()[0].get("季度")}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict28", statisticQuarter)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc获取产品线列表1,2300,2300-18,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_ls"
# 第一步登录后台运营系统获取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")
# print(request_body)
"""
场景: 获取产品线列表
用例名称:获取产品线列表
输出:{"total":"%s"}
"""
# 发送请求
result = requests.get(url, params=request_body, headers=headers)
# 获取接口响应时间
api_time = float(result.elapsed.total_seconds())
# 获取产品线信息
result = json.loads(result.content)
# print(result)
result = {"total": len(result["data"])}
# 将接口响应时间添加至result
result["api_time"] = api_time
# 数据库操作
mysql_handle = mySql()
# 获取conf.ini文件中配置的数据库信息
host, port, user, pwd = mysql_handle.getConf(db="cmdc_db_be")
# 查询数据库中产品线信息数量
sql = "SELECT t.productLineCode FROM `cmdc-cms`.cms_statistic_goods t " \
"WHERE companyCode = 00102 group by productLineCode"
total = len(mysql_handle.selectSql(host, port, user, pwd, "cmdc-cms", sql))
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict18", total)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
\ No newline at end of file
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc获取分销商库存上报列表,2300,2300-4,sit,be
主数据平台:后台运营系统获取分销商库存上报列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_ls"
# 第一步登录后台运营系统获取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, "url4")
request_body = commonFuc().get_business_data(module, "payload4")
# print(request_body)
"""
场景: 获取分销商库存上报列表
用例名称:获取分销商库存上报列表
输出:{"total":"%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, "checkDict4")
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
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