mirror of https://gitee.com/a529548204/apitest.git
This commit is contained in:
parent
59c3e12362
commit
24f23b7804
|
@ -82,8 +82,9 @@ class apiSend(object):
|
|||
allure.attach(name="请求地址", body=url)
|
||||
allure.attach(name="请求头", body=str(header))
|
||||
allure.attach(name="请求参数", body=str(data_random))
|
||||
|
||||
response = requests.post(url=url, json=json.loads(data_random), headers=header, timeout=timeout)
|
||||
if data_random:
|
||||
data_random = json.loads(data_random)
|
||||
response = requests.post(url=url, json=data_random, headers=header, timeout=timeout)
|
||||
else:
|
||||
with allure.step("POST请求接口"):
|
||||
allure.attach(name="请求地址", body=url)
|
||||
|
@ -167,7 +168,9 @@ class apiSend(object):
|
|||
allure.attach(name="请求地址", body=url)
|
||||
allure.attach(name="请求头", body=str(header))
|
||||
allure.attach(name="请求参数", body=str(data_random))
|
||||
response = requests.put(url=url, json=json.loads(data_random), headers=header, timeout=timeout, files=files)
|
||||
if data_random:
|
||||
data_random = json.loads(data_random)
|
||||
response = requests.put(url=url, json=data_random, headers=header, timeout=timeout, files=files)
|
||||
else:
|
||||
with allure.step("PUT请求接口"):
|
||||
allure.attach(name="请求地址", body=url)
|
||||
|
|
|
@ -13,61 +13,6 @@ from scripts.readYamlFile import ini_yaml
|
|||
Log()
|
||||
|
||||
|
||||
def assert_json(data, key=None, value=None, asserttype="KEY"):
|
||||
"""
|
||||
json返回值断言
|
||||
:param data: 返回数据
|
||||
:param key:
|
||||
:param value:
|
||||
:param asserttype: "KEY" OR "VALUE" OR "KEY-VALUE"
|
||||
:return:
|
||||
"""
|
||||
if asserttype == "KEY":
|
||||
try:
|
||||
assert data.get(key) is not None
|
||||
with allure.step("判断JSON返回值KEY是否存在"):
|
||||
allure.attach(name="期望存在KEY", body=str(key))
|
||||
allure.attach(name='实际data', body=str(data))
|
||||
logging.info(
|
||||
"断言通过, 存在key'{}', value为'{}'.".format(key, data.get(key)))
|
||||
except Exception:
|
||||
logging.error("断言未通过, 不存在key:'{}'.".format(key))
|
||||
raise
|
||||
elif asserttype == "VALUE":
|
||||
try:
|
||||
rs_values = list(data.values())
|
||||
with allure.step("判断JSON返回值VALUE是否存在"):
|
||||
allure.attach(name="期望VALUE", body=str(value))
|
||||
allure.attach(name='实际VALUE', body=str(rs_values))
|
||||
assert value in rs_values
|
||||
|
||||
logging.info("断言通过, 存在value为'{}', key为'{}'.".format(value, list(data.keys())[
|
||||
list(data.values()).index(value)]))
|
||||
except AssertionError:
|
||||
logging.error(
|
||||
"断言未通过, 不存在类型为'{}'的value:''{}''.".format(type(value), value))
|
||||
raise
|
||||
elif asserttype == "KEY-VALUE":
|
||||
try:
|
||||
|
||||
with allure.step("判断JSON返回值是否存在KEY-VALUE"):
|
||||
allure.attach(name="期望KEY-VALUE", body=str({key: value}))
|
||||
allure.attach(name='实际KEY-VALUE', body=str(data))
|
||||
if key in data:
|
||||
assert value == data[key]
|
||||
else:
|
||||
logging.error("断言未通过, 不存在key:'{}'.".format(key))
|
||||
raise AssertionError
|
||||
logging.info("断言通过, 存在键值对key为'{}',value为'{}'.".format(list(data.keys())[
|
||||
list(data.values()).index(value)], value))
|
||||
except AssertionError:
|
||||
logging.error(
|
||||
"断言未通过, 不存在key为'{}',类型为'{}'的value:''{}''.".format(key, type(value), value))
|
||||
raise
|
||||
else:
|
||||
logging.error("断言类型错误, 请选择断言类型.")
|
||||
|
||||
|
||||
def assert_text(hope_res, real_res, third_data=None, third_datas=None):
|
||||
"""
|
||||
文本判断
|
||||
|
|
|
@ -186,6 +186,12 @@ def get_time(time_type, layout, unit="0,0,0,0,0"):
|
|||
def replace_random(value, res=None, param=None):
|
||||
"""
|
||||
调用定义方法替换字符串
|
||||
int_num = "$RandomPosInt(1,333)$"
|
||||
str_num = '$RandomString($RandomPosInt(2,23)$)$$RandomPosInt(1,333)$'
|
||||
float_num = '$RandomFloat($RandomPosInt(2,13)$,$RandomPosInt(2,13)$,$RandomPosInt(2,13)$)$'
|
||||
time_num = '$GetTime(time_type=else,layout=%Y-%m-%d %H:%M:%S,unit=0,0,0,0,0)$'
|
||||
choice_num = '$Choice($RandomPosInt(2,13)$)$'
|
||||
json_value = '$json($.data[-$RandomPosInt(1,5)$:])$'
|
||||
urls = "$url(home_id)$"
|
||||
ca = "$caches(haha)$"
|
||||
print(replace_random(urls,param={"home_id":"$caches(haha)$"}))
|
||||
|
@ -290,66 +296,52 @@ if __name__ == '__main__':
|
|||
time_num = '$GetTime(time_type=else,layout=%Y-%m-%d %H:%M:%S,unit=0,0,0,0,0)$'
|
||||
choice_num = '$Choice($RandomPosInt(2,13)$)$'
|
||||
'$json($.data[-$RandomPosInt(1,5)$:])$'
|
||||
# jsons = """
|
||||
# select count(*) '$json($.data[-$RandomPosInt(1,5)$:])$'
|
||||
# $RandomString($RandomPosInt(2,23)$)$
|
||||
# ) as ad
|
||||
# """
|
||||
# js = """
|
||||
# select count(*) '$GetTime(time_type=past,layout=%Y-%m-%d,unit=0,0,0,1,0)$' from (
|
||||
# select
|
||||
# dr.qr_code,
|
||||
# alarm.device_id,
|
||||
# alarm.grade,
|
||||
# alarm.create_time,
|
||||
# alarm.handler_status,
|
||||
# alarm.work_order
|
||||
#
|
||||
# from alarm
|
||||
# inner join (
|
||||
# select device.id,
|
||||
# device.qr_code,
|
||||
# device.region_id,
|
||||
# region.enterprise_id,
|
||||
# device.status,
|
||||
# device.category_id
|
||||
# from device
|
||||
# inner join region
|
||||
# on device.region_id = region.id
|
||||
# and region.enterprise_id = 88
|
||||
# ) as dr
|
||||
# on dr.qr_code = alarm.device_id and alarm.create_time >= '$GetTime(time_type=past,layout=%Y-%m-%d 00:00:00,unit=0,0,0,1,0)$' and alarm.create_time < '$GetTime(time_type=past,layout=%Y-%m-%d 00:00:00,unit=0,0,0,0,0)$'
|
||||
# ) as ad
|
||||
# """
|
||||
jsons = """
|
||||
select count(*) '$json($.data[-$RandomPosInt(1,5)$:])$'
|
||||
$RandomString($RandomPosInt(2,23)$)$
|
||||
) as ad
|
||||
"""
|
||||
js = """
|
||||
select count(*) '$json($.data[-$RandomPosInt(1,5)$:])$' from (
|
||||
select
|
||||
dr.qr_code,
|
||||
alarm.device_id,
|
||||
alarm.grade,
|
||||
alarm.create_time,
|
||||
alarm.handler_status,
|
||||
alarm.work_order
|
||||
|
||||
from alarm
|
||||
inner join (
|
||||
select device.id,
|
||||
device.qr_code,
|
||||
device.region_id,
|
||||
region.enterprise_id,
|
||||
device.status,
|
||||
device.category_id
|
||||
from device
|
||||
inner join region
|
||||
on device.region_id = region.id
|
||||
and region.enterprise_id = 88
|
||||
) as dr
|
||||
on dr.qr_code = alarm.device_id and alarm.create_time >= '$GetTime(time_type=past,layout=%Y-%m-%d 00:00:00,unit=0,0,0,1,0)$' and alarm.create_time < '$GetTime(time_type=past,layout=%Y-%m-%d 00:00:00,unit=0,0,0,0,0)$'
|
||||
) as ad
|
||||
"""
|
||||
# a = json.dumps(ini_yaml("homePageData.yml")["companyAlarm"])
|
||||
# print(type(ini_yaml("家庭详情.yml")[0]["data"]))
|
||||
# print(replace_random(int_num))
|
||||
# print(replace_random(str_num))
|
||||
# print(replace_random(float_num))
|
||||
# print(replace_random(time_num))
|
||||
# res1 = {'code': 0, 'msg': 'ok',
|
||||
# 'data': [{'time': '2021-08-18', 'number': None}, {'time': '2021-08-19', 'number': None},
|
||||
# {'time': '2021-08-20', 'number': 1}, {'time': '2021-08-21', 'number': None},
|
||||
# {'time': '2021-08-22', 'number': None}, {'time': '2021-08-23', 'number': 9},
|
||||
# {'time': '2021-08-24', 'number': 7}, {'time': '2021-08-25', 'number': 11},
|
||||
# {'time': '2021-08-26', 'number': 2}, {'time': '2021-08-27', 'number': 1},
|
||||
# {'time': '2021-08-28', 'number': None}, {'time': '2021-08-29', 'number': None},
|
||||
# {'time': '2021-08-30', 'number': None}, {'time': '2021-08-31', 'number': 1},
|
||||
# {'time': '2021-09-01', 'number': 2}, {'time': '2021-09-02', 'number': 4},
|
||||
# {'time': '2021-09-03', 'number': 3}, {'time': '2021-09-04', 'number': 3},
|
||||
# {'time': '2021-09-05', 'number': 1}, {'time': '2021-09-06', 'number': 7},
|
||||
# {'time': '2021-09-07', 'number': 13}, {'time': '2021-09-08', 'number': 23},
|
||||
# {'time': '2021-09-09', 'number': 21}, {'time': '2021-09-10', 'number': 11},
|
||||
# {'time': '2021-09-11', 'number': 7}, {'time': '2021-09-12', 'number': 4},
|
||||
# {'time': '2021-09-13', 'number': 22}, {'time': '2021-09-14', 'number': 19},
|
||||
# {'time': '2021-09-15', 'number': 38}, {'time': '2021-09-16', 'number': 39}]}
|
||||
# print(replace_random(js, res=res1))
|
||||
res1 = {'code': 0, 'msg': 'ok',
|
||||
'data': [{'time': '2021-08-18', 'number': None}, {'time': '2021-08-19', 'number': None},
|
||||
{'time': '2021-08-20', 'number': 1}, {'time': '2021-08-21', 'number': None},
|
||||
{'time': '2021-08-22', 'number': None}, {'time': '2021-08-23', 'number': 9}]}
|
||||
print(replace_random(js, res=res1))
|
||||
t = "$GetTime(time_type=past,layout=13timestampDAY,unit=0,0,0,1,4)$"
|
||||
# print(replace_random(choice_num))
|
||||
urls = "$url(home_id)$"
|
||||
ca = "$caches(haha)$"
|
||||
print(replace_random(urls,param={"home_id":"$caches(haha)$"}))
|
||||
print(replace_random(ca))
|
||||
# print(replace_random(urls,param={"home_id":"$caches(haha)$"}))
|
||||
# print(replace_random(ca))
|
||||
# pattern = re.compile(r'\$json\(' + '$.data.alarm[1].number'.replace('$',"\$").replace('[','\[') + r'\)\$')
|
||||
# # key = str(sql_json(i))
|
||||
# key = "123"
|
||||
|
|
|
@ -22,10 +22,11 @@ def ini_yaml(filename, path=datapath):
|
|||
|
||||
|
||||
if __name__ == '__main__':
|
||||
print(datapath)
|
||||
# get_yaml_data(r"F:\api2.0\config\runConfig.yml")
|
||||
runConfig_dict = ini_yaml(r'tmUrlData.yml',path= r"D:\apitest\test_suite\datas\troubleManage")
|
||||
# case_level = runConfig_dict[0]["address"].format(**{"home_id": "123"})
|
||||
print(runConfig_dict)
|
||||
# runConfig_dict = ini_yaml(r'tmUrlData.yml',path= r"D:\apitest\test_suite\datas\troubleManage")
|
||||
# # case_level = runConfig_dict[0]["address"].format(**{"home_id": "123"})
|
||||
# print(runConfig_dict)
|
||||
|
||||
|
||||
# print(case_level)
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# coding:utf-8
|
||||
import os
|
||||
import time
|
||||
|
||||
from config.confManage import dir_manage
|
||||
from scripts.log import Log
|
||||
|
@ -18,10 +19,12 @@ def getFilePathList(path, filetype):
|
|||
return pathList
|
||||
|
||||
|
||||
def write_case(_file,pagename):
|
||||
path = dir_manage(dir_manage('${pro_dir}$') + dir_manage('${test_suite}$') + dir_manage('${page_dir}$'))
|
||||
with open(path + r"{}".format(pagename), 'w+', encoding='utf-8') as f:
|
||||
f.write("""# coding:utf-8\nfrom test_suite.page import *\n\nurlData = ini_yaml("{}")\n\n""".format(_file))
|
||||
def write_pages(_file,pagename):
|
||||
t1 = time.time()
|
||||
path = dir_manage('${pro_dir}$') + dir_manage('${test_suite}$') + dir_manage('${page_dir}$') + dir_manage('${test_name}$')
|
||||
print(path)
|
||||
with open(path +"/" +r"{}".format(pagename), 'w+', encoding='utf-8') as f:
|
||||
f.write("""# coding:utf-8\nfrom test_suite.page.{} import *\n\nurlData = ini_yaml("{}")\n\n""".format(dir_manage('${test_name}$'),_file))
|
||||
yml_data = ini_yaml(_file)
|
||||
|
||||
for item in yml_data.items():
|
||||
|
@ -48,11 +51,23 @@ def {testtitle}(casedata):""".format(testtitle=item[0]))
|
|||
"""
|
||||
return res, restime\n\n"""
|
||||
)
|
||||
t2 = time.time() - t1
|
||||
print(t2)
|
||||
|
||||
|
||||
# def write_case(f):
|
||||
#
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
# ym_path = r'thirdUrl.yml'
|
||||
# pagenames = "third_pages_1.py"
|
||||
|
||||
ym_path = r'urlData.yml'
|
||||
pagenames = "saasApp_pages_1.py"
|
||||
write_case(ym_path,pagenames)
|
||||
# write_case(ym_path,pagenames)
|
||||
|
||||
# ym_path = r'urlData.yml'
|
||||
# pagenames = "saasWeb_pages_1.py"
|
||||
write_pages(ym_path,pagenames)
|
||||
|
|
|
@ -30,7 +30,7 @@ def run():
|
|||
# 执行命令行
|
||||
args = ['-s', '-q', test_case_path, '--alluredir', temp_path]
|
||||
# args = ['-s', '-q', test_case_path,]
|
||||
pytest.main(args)
|
||||
# pytest.main(args)
|
||||
|
||||
cmd = 'allure generate %s -o %s -c' % (temp_path, html_path)
|
||||
os.system(cmd)
|
||||
|
|
|
@ -1,24 +1 @@
|
|||
# coding:utf-8
|
||||
import logging
|
||||
|
||||
import allure
|
||||
import pytest
|
||||
|
||||
from common.checkResult import asserting,assert_json
|
||||
from scripts.log import Log
|
||||
from scripts.readYamlFile import ini_yaml
|
||||
from common.basePage import apisend
|
||||
from test_suite.page import saasApp_pages
|
||||
|
||||
Log()
|
||||
__all__ = [
|
||||
'pytest',
|
||||
'asserting',
|
||||
'Log',
|
||||
'ini_yaml',
|
||||
'logging',
|
||||
'allure',
|
||||
'apisend',
|
||||
'saasApp_pages',
|
||||
'assert_json'
|
||||
]
|
|
@ -0,0 +1,30 @@
|
|||
# coding:utf-8
|
||||
"""
|
||||
@author: 井松
|
||||
@contact: 529548204@qq.com
|
||||
@file: __init__.py.py
|
||||
@time: 2021/12/3 13:51
|
||||
"""
|
||||
|
||||
import logging
|
||||
|
||||
import allure
|
||||
import pytest
|
||||
|
||||
from common.checkResult import asserting
|
||||
from scripts.log import Log
|
||||
from scripts.readYamlFile import ini_yaml
|
||||
from common.basePage import apisend
|
||||
from test_suite.page.saasApp import saasApp_pages
|
||||
|
||||
Log()
|
||||
__all__ = [
|
||||
'pytest',
|
||||
'asserting',
|
||||
'Log',
|
||||
'ini_yaml',
|
||||
'logging',
|
||||
'allure',
|
||||
'apisend',
|
||||
'saasApp_pages',
|
||||
]
|
|
@ -1,5 +1,5 @@
|
|||
# coding:utf-8
|
||||
from test_suite.page import *
|
||||
from test_suite.page.saasApp import *
|
||||
|
||||
urlData = ini_yaml("urlData.yml")
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
# coding:utf-8
|
||||
from test_suite.page import *
|
||||
from test_suite.page.saasApp import *
|
||||
|
||||
urlData = ini_yaml("thirdUrl.yml")
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
# coding:utf-8
|
||||
"""
|
||||
@author: 井松
|
||||
@contact: 529548204@qq.com
|
||||
@file: __init__.py.py
|
||||
@time: 2021/12/3 13:52
|
||||
"""
|
||||
|
||||
|
||||
import logging
|
||||
|
||||
import allure
|
||||
import pytest
|
||||
|
||||
from common.checkResult import asserting
|
||||
from scripts.log import Log
|
||||
from scripts.readYamlFile import ini_yaml
|
||||
from common.basePage import apisend
|
||||
from test_suite.page.saasWeb import saasWeb_pages
|
||||
|
||||
Log()
|
||||
__all__ = [
|
||||
'pytest',
|
||||
'asserting',
|
||||
'Log',
|
||||
'ini_yaml',
|
||||
'logging',
|
||||
'allure',
|
||||
'apisend',
|
||||
'saasWeb_pages',
|
||||
]
|
|
@ -0,0 +1,45 @@
|
|||
# coding:utf-8
|
||||
from test_suite.page.saasWeb import *
|
||||
|
||||
urlData = ini_yaml("urlData.yml")
|
||||
|
||||
|
||||
def login(casedata):
|
||||
data = urlData["login"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareList(casedata):
|
||||
data = urlData["firmwareList"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareAdd(casedata):
|
||||
data = urlData["firmwareAdd"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareDel(casedata):
|
||||
data = urlData["firmwareDel"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareDetail(casedata):
|
||||
data = urlData["firmwareDetail"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
# coding:utf-8
|
||||
from test_suite.page.saasWeb import *
|
||||
|
||||
urlData = ini_yaml("urlData.yml")
|
||||
|
||||
|
||||
def login(casedata):
|
||||
data = urlData["login"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareList(casedata):
|
||||
data = urlData["firmwareList"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareAdd(casedata):
|
||||
data = urlData["firmwareAdd"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareDel(casedata):
|
||||
data = urlData["firmwareDel"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareDetail(casedata):
|
||||
data = urlData["firmwareDetail"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
# coding:utf-8
|
||||
from test_suite.page.saasWeb import *
|
||||
|
||||
urlData = ini_yaml("urlData.yml")
|
||||
|
||||
|
||||
def login(casedata):
|
||||
data = urlData["login"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareList(casedata):
|
||||
data = urlData["firmwareList"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareAdd(casedata):
|
||||
data = urlData["firmwareAdd"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareDel(casedata):
|
||||
data = urlData["firmwareDel"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
||||
|
||||
def firmwareDetail(casedata):
|
||||
data = urlData["firmwareDetail"]
|
||||
logging.info("{}".format(casedata["info"]))
|
||||
res, restime = apisend(host=data["host"], address=data["address"], method=data["method"], headers=casedata["headers"],
|
||||
data=casedata["data"],rel=data["relevance"])
|
||||
return res, restime
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
# coding:utf-8
|
||||
from test_suite.page.saasApp_pages import *
|
||||
from test_suite.page.saasApp.saasApp_pages import *
|
||||
|
||||
paramData = ini_yaml("loginData.yml")["login"][0]
|
||||
thirdParamData = ini_yaml("loginData.yml")["login"][0]
|
||||
|
@ -11,7 +11,7 @@ def setup_login():
|
|||
data = urlData["login"]
|
||||
logging.info("{}".format(paramData["info"]))
|
||||
res, restime = apisend(address=data["address"], method=data["method"], headers=paramData["headers"],
|
||||
data=paramData["data"])
|
||||
data=paramData["data"],rel=data["relevance"])
|
||||
|
||||
logging.info("前置请求结束")
|
||||
return res
|
||||
|
@ -25,5 +25,5 @@ def third_login():
|
|||
data = thirdURL["weblogin"]
|
||||
logging.info("{}".format(paramData["info"]))
|
||||
res, restime = apisend(address=data["address"], method=data["method"], headers=paramData["headers"],
|
||||
data=paramData["data"])
|
||||
data=paramData["data"],rel=data["relevance"])
|
||||
return res
|
||||
|
|
|
@ -6,9 +6,8 @@
|
|||
@time: 2021/9/14 16:40
|
||||
"""
|
||||
from test_suite.page.saasApp_pages import *
|
||||
from test_suite.page.third_pages import *
|
||||
paramData = ini_yaml("alarmData.yml")
|
||||
thirdData = ini_yaml("thirdData.yml")
|
||||
|
||||
|
||||
class Test_alarm(object):
|
||||
# def setup(self):
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
@file: test_function.py
|
||||
@time: 2021/10/8 15:02
|
||||
"""
|
||||
from test_suite.page.saasApp_pages import *
|
||||
from test_suite.page.saasApp.saasApp_pages import *
|
||||
# from test_suite.page.third_pages import *
|
||||
paramData = ini_yaml("functionData.yml")
|
||||
# thirdData = ini_yaml("thirdData.yml")
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# coding:utf-8
|
||||
from test_suite.page.saasApp_pages import *
|
||||
from test_suite.page.saasApp.saasApp_pages import *
|
||||
|
||||
paramData = ini_yaml("homePageData.yml")
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# coding:utf-8
|
||||
import pytest
|
||||
|
||||
from test_suite.page.saasApp_pages import *
|
||||
from test_suite.page.saasApp.saasApp_pages import *
|
||||
|
||||
paramData = ini_yaml("loginData.yml")
|
||||
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
@file: test_power.py
|
||||
@time: 2021/9/17 16:56
|
||||
"""
|
||||
from test_suite.page.saasApp_pages import *
|
||||
from test_suite.page.third_pages import *
|
||||
from test_suite.page.saasApp.saasApp_pages import *
|
||||
from test_suite.page.saasApp.third_pages import *
|
||||
|
||||
paramData = ini_yaml("powerData.yml")
|
||||
thirdData = ini_yaml("thirdData.yml")
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
@file: test_region.py
|
||||
@time: 2021/10/8 16:11
|
||||
"""
|
||||
from test_suite.page.saasApp_pages import *
|
||||
from test_suite.page.saasApp.saasApp_pages import *
|
||||
# from test_suite.page.third_pages import *
|
||||
paramData = ini_yaml("regionData.yml")
|
||||
# thirdData = ini_yaml("thirdData.yml")
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
# coding:utf-8
|
||||
"""
|
||||
@author: 井松
|
||||
@contact: 529548204@qq.com
|
||||
@file: conftest.py
|
||||
@time: 2021/12/3 14:25
|
||||
"""
|
||||
from test_suite.page.saasWeb.saasWeb_pages import *
|
||||
|
||||
paramData = ini_yaml("loginData.yml")["login"][0]
|
||||
|
||||
|
||||
@pytest.fixture(scope="module")
|
||||
def setup_Login():
|
||||
logging.info("前置请求登录")
|
||||
data = urlData["login"]
|
||||
logging.info("{}".format(paramData["info"]))
|
||||
res, restime = apisend(host=data["host"],address=data["address"], method=data["method"], headers=paramData["headers"],
|
||||
data=paramData["data"],rel=data["relevance"])
|
||||
|
||||
logging.info("前置请求结束")
|
||||
return res
|
|
@ -0,0 +1,53 @@
|
|||
# coding:utf-8
|
||||
"""
|
||||
@author: 井松
|
||||
@contact: 529548204@qq.com
|
||||
@file: test_firmware.py
|
||||
@time: 2021/12/3 14:30
|
||||
"""
|
||||
import pytest
|
||||
|
||||
from test_suite.page.saasWeb.saasWeb_pages import *
|
||||
|
||||
paramData = ini_yaml("firmwareData.yml")
|
||||
|
||||
|
||||
class Test_firmwareList(object):
|
||||
# def setup(self):
|
||||
# self.re = saasPages()
|
||||
# ids=[i["info"] for i in paramData["login"]]
|
||||
@allure.story("Test_firmwareList")
|
||||
@pytest.mark.parametrize('casedata', paramData["firmwareList"], ids=[i["info"] for i in paramData["firmwareList"]])
|
||||
@pytest.mark.flaky(reruns=1, reruns_delay=1)
|
||||
@pytest.mark.run(order=2)
|
||||
def test_firmwareList(self, casedata, setup_webLogin):
|
||||
casedata["headers"]["Authorization"] = "JWT " + setup_webLogin["data"]["token"]
|
||||
res, restime = firmwareList(casedata)
|
||||
asserting(hope_res=casedata["assert"], real_res=res, re_time=restime)
|
||||
|
||||
@allure.story("Test_firmwareAdd")
|
||||
@pytest.mark.parametrize('casedata', paramData["firmwareAdd"], ids=[i["info"] for i in paramData["firmwareAdd"]])
|
||||
@pytest.mark.flaky(reruns=1, reruns_delay=1)
|
||||
@pytest.mark.run(order=1)
|
||||
def test_firmwareAdd(self, casedata, setup_webLogin):
|
||||
casedata["headers"]["Authorization"] = "JWT " + setup_webLogin["data"]["token"]
|
||||
res, restime = firmwareAdd(casedata)
|
||||
asserting(hope_res=casedata["assert"], real_res=res, re_time=restime)
|
||||
|
||||
@allure.story("Test_firmwareDel")
|
||||
@pytest.mark.parametrize('casedata', paramData["firmwareDel"], ids=[i["info"] for i in paramData["firmwareDel"]])
|
||||
@pytest.mark.flaky(reruns=1, reruns_delay=1)
|
||||
@pytest.mark.run(order=3)
|
||||
def test_firmwareDel(self, casedata, setup_Login):
|
||||
casedata["headers"]["Authorization"] = "JWT " + setup_Login["data"]["token"]
|
||||
res, restime = firmwareDel(casedata)
|
||||
asserting(hope_res=casedata["assert"], real_res=res, re_time=restime)
|
||||
|
||||
@allure.story("Test_firmwareDetail")
|
||||
@pytest.mark.parametrize('casedata', paramData["firmwareDetail"], ids=[i["info"] for i in paramData["firmwareDetail"]])
|
||||
@pytest.mark.flaky(reruns=1, reruns_delay=1)
|
||||
@pytest.mark.run(order=2)
|
||||
def test_firmwareDetail(self, casedata, setup_webLogin):
|
||||
# casedata["headers"]["Authorization"] = "JWT " + setup_webLogin["data"]["token"]
|
||||
res, restime = firmwareDetail(casedata)
|
||||
asserting(hope_res=casedata["assert"], real_res=res, re_time=restime)
|
|
@ -0,0 +1,27 @@
|
|||
# coding:utf-8
|
||||
"""
|
||||
@author: 井松
|
||||
@contact: 529548204@qq.com
|
||||
@file: test_login.py
|
||||
@time: 2021/12/3 13:54
|
||||
"""
|
||||
import pytest
|
||||
|
||||
from test_suite.page.saasWeb.saasWeb_pages import *
|
||||
|
||||
paramData = ini_yaml("loginData.yml")
|
||||
|
||||
|
||||
class Test_login(object):
|
||||
# def setup(self):
|
||||
# self.re = saasPages()
|
||||
# ids=[i["info"] for i in paramData["login"]]
|
||||
@allure.story("Test_login")
|
||||
@pytest.mark.parametrize('casedata', paramData["login"], ids=[i["info"] for i in paramData["login"]])
|
||||
@pytest.mark.flaky(reruns=1, reruns_delay=1)
|
||||
@pytest.mark.run(order=1)
|
||||
def test_login(self, casedata):
|
||||
res, restime = login(casedata)
|
||||
asserting(hope_res=casedata["assert"], real_res=res,re_time=restime)
|
||||
|
||||
|
Loading…
Reference in New Issue