Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
test
autotest-airtest-web-cmdc
Commits
4ff5a002
Commit
4ff5a002
authored
Feb 28, 2024
by
liguangyu06
Browse files
用例新增:超发配置导入功能验证
parent
9941a201
Changes
3
Hide whitespace changes
Inline
Side-by-side
air_case/cmdc_32st/超发配置导入功能验证.air/超发配置导入功能验证.py
0 → 100644
View file @
4ff5a002
# -*- encoding=utf8 -*-
__author__
=
"liguangyu"
"""
case_tag:cmdc_api,cmdc超发配置导入功能验证,32,32-10,sit,be
主数据平台:后台运营系统超发配置导入接口
"""
from
common.common_func
import
commonFuc
from
air_case.cmdc_login.后台管理系统登录.后台管理系统登录
import
CmdcDoLogin
from
common.handle_excel
import
HandleExcel
from
common.db.db
import
mySql
import
random
import
requests
import
json
import
os
module
=
"cmdc_32st"
# 第一步登录后台运营系统获取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_file"
,
cmdc_access_token
)
# 第二步获取商品信息
url
=
commonFuc
().
get_api_url
()
+
commonFuc
().
get_business_data
(
module
,
"url10_1"
)
request_body
=
commonFuc
().
get_business_data
(
module
,
"payload10_1"
)
# 发送请求
result
=
requests
.
post
(
url
,
json
=
request_body
,
headers
=
headers
)
result
=
json
.
loads
(
result
.
content
)
# 生成随机数
product_random
=
random
.
randint
(
0
,
len
(
result
[
"data"
][
"list"
])
-
1
)
# 获取商品信息
productCode
=
result
[
"data"
][
"list"
][
product_random
][
"productCode"
]
productName
=
result
[
"data"
][
"list"
][
product_random
][
"productName"
]
specifications
=
result
[
"data"
][
"list"
][
product_random
][
"specifications"
]
num
=
random
.
randint
(
1
,
5
)
# print(productCode)
# 获取文件
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
=
productCode
)
excel
.
write_data
(
row
=
2
,
column
=
2
,
value
=
productName
)
excel
.
write_data
(
row
=
2
,
column
=
3
,
value
=
specifications
)
excel
.
write_data
(
row
=
2
,
column
=
4
,
value
=
num
)
excel
.
write_data
(
row
=
2
,
column
=
5
,
value
=
num
)
# 第三步进行超发配置导入操作
url
=
commonFuc
().
get_api_url
()
+
commonFuc
().
get_business_data
(
module
,
"url10"
)
request_body
=
commonFuc
().
get_business_data
(
module
,
"payload10"
)
# 获取文件
file
=
open
(
file_path
,
"rb"
)
files
=
{
"file"
:
file
}
"""
场景: 超发配置导入功能验证
用例名称:超发配置导入功能验证
输出:{"wholeQuantity":"%s"}
"""
# 发送请求
result
=
requests
.
post
(
url
,
files
=
files
,
headers
=
headers
,
data
=
request_body
)
# 获取接口响应时间
api_time
=
float
(
result
.
elapsed
.
total_seconds
())
# 数据库操作
mysql_handle
=
mySql
()
# 获取conf.ini文件中配置的数据库信息
host
,
port
,
user
,
pwd
=
mysql_handle
.
getConf
(
db
=
"cmdc_db_be"
)
# 查询数据库超发配置数量
sql
=
"SELECT t.wholeQuantity FROM `cmdc-order`.tc_supernova t "
\
"WHERE companyCode = 00102 and productCode = {}"
.
format
(
productCode
)
total
=
int
(
mysql_handle
.
selectSql
(
host
,
port
,
user
,
pwd
,
"cmdc-order"
,
sql
)[
0
][
0
])
result
=
{
"wholeQuantity"
:
total
}
# 将接口响应时间添加至result
result
[
"api_time"
]
=
api_time
# 获取预期结果
check_dict
=
commonFuc
().
get_business_data
(
module
,
"checkDict10"
,
num
)
# print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc
().
check_result
(
check_dict
,
result
)
air_case/cmdc_32st/超发配置导入日志记录验证.air/超发配置导入日志记录验证.py
View file @
4ff5a002
...
...
@@ -47,7 +47,8 @@ mysql_handle = mySql()
host
,
port
,
user
,
pwd
=
mysql_handle
.
getConf
(
db
=
"cmdc_db_be"
)
# 查询数据库超发配置导入记录数量
sql
=
"SELECT count(t.id) FROM `cmdc-order`.tc_excel_log t WHERE sheetName = 'supernova-D' ORDER BY createTime desc"
sql
=
"SELECT count(t.id) FROM `cmdc-order`.tc_excel_log t "
\
"WHERE sheetName = 'supernova-D' and companyCode =00102 ORDER BY createTime desc"
total
=
mysql_handle
.
selectSql
(
host
,
port
,
user
,
pwd
,
"cmdc-order"
,
sql
)[
0
][
0
]
# 将接口响应时间添加至result
...
...
data/cmdc_32st/data
View file @
4ff5a002
...
...
@@ -98,8 +98,14 @@ checkDict9: {"strsQuery":"%s"}
#预期结果
checkDict13: {"total":"%s"}
#测试场景10:超发配置导入功能验证
"url10": "/order/public/supernovaExcel"
"payload10": {"type":"supernova-D"}
#预期结果
checkDict10: {"wholeQuantity":"%s"}
#获取商品信息
"url10_1": "/product/mall/queryProductInfoByPage"
"payload10_1": {"isFbList":0,"filialeCode":null,"productName":null,"productCode":null,"specifications":null,"materialCode":null,"manufacturer":null,"lineName":null,"riskRank":null,"isRelease":"1","isExistImage":null,"jdeStatus":"P","isGift":"0","description":null,"tbsj":[],"pageNum":1,"pageSize":8,"total":619,"firstQuery":true,"flag":true,"preInvalidStatus":null,"isControlSales":"0","startTime":null,"endTime":null,"status":101}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment