Commit e3b8860f by jiaqiying
parents 76359dc0 ef5c5454
from common.tools import request_main
__author__ = 'dengmaosheng' __author__ = 'dengmaosheng'
__data__ = "2021-05-08 10:26" __data__ = "2021-05-08 10:26"
import pytest import pytest
...@@ -19,6 +21,9 @@ def bmc_login_fixture(): ...@@ -19,6 +21,9 @@ def bmc_login_fixture():
# BMCConfig.headers['Pvt-Token'] = res[1] # BMCConfig.headers['Pvt-Token'] = res[1]
# BMCConfig.headers['Token'] = res[0] # BMCConfig.headers['Token'] = res[0]
if __name__ == '__main__': if __name__ == '__main__':
bmc_login_fixture() bmc_login_fixture()
......
...@@ -36,15 +36,17 @@ def get_vehickleId_Tounbind(): ...@@ -36,15 +36,17 @@ def get_vehickleId_Tounbind():
@allure.epic("电子证照") @allure.epic("电子证照")
# @allure.feature("电子驾驶证") # @allure.feature("电子驾驶证")
class TestDrivingLicense(): class TestDrivingLicense():
workBook = xlrd.open_workbook(f'{BaseConfig.root_path}/test_case_data/bmc/bmc_testcase01_20210513.xlsx') workBook = xlrd.open_workbook(f'{BaseConfig.root_path}/test_case_data/bmc/bmc_tk.xlsx')
@allure.story("二维码详情") @allure.story("二维码详情")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/81596") @allure.link("http://yapi.hikcreate.com/project/32/interface/api/81596")
@allure.description("/dlVeh/qr") @allure.description("/dlVeh/qr")
@allure.title("{inData[testPoint]}") @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook,'电子证照', 'dlVehqr')) @pytest.mark.parametrize("inData", get_excelData(workBook, '电子证照', 'dlVehqr'))
def test_dlVehQr(self,inData): def test_dlVehQr(self,inData):
url = f"{BMCConfig().pvthost}{inData['url']}" url = f"{BMCConfig().pvthost}{inData['url']}"
method = inData['method'] method = inData['method']
...@@ -72,6 +74,7 @@ class TestDrivingLicense(): ...@@ -72,6 +74,7 @@ class TestDrivingLicense():
"""断言""" """断言"""
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("照片审核状态") @allure.story("照片审核状态")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/22759") @allure.link("http://yapi.hikcreate.com/project/32/interface/api/22759")
@allure.description("/drivingLicense/image/audit/status") @allure.description("/drivingLicense/image/audit/status")
...@@ -104,6 +107,7 @@ class TestDrivingLicense(): ...@@ -104,6 +107,7 @@ class TestDrivingLicense():
"""断言""" """断言"""
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@pytest.mark.scoreDetail
@allure.story("修改驾驶证头像") @allure.story("修改驾驶证头像")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/22750") @allure.link("http://yapi.hikcreate.com/project/32/interface/api/22750")
@allure.description("/drivingLicense/avatar/update") @allure.description("/drivingLicense/avatar/update")
...@@ -120,7 +124,7 @@ class TestDrivingLicense(): ...@@ -120,7 +124,7 @@ class TestDrivingLicense():
"""断言""" """断言"""
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
# @pytest.mark.scoreDetail
@allure.story("驾照扣分记录") @allure.story("驾照扣分记录")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/5332") @allure.link("http://yapi.hikcreate.com/project/32/interface/api/5332")
@allure.description("/drivingLicense/score/detail") @allure.description("/drivingLicense/score/detail")
...@@ -154,8 +158,6 @@ class TestDrivingLicense(): ...@@ -154,8 +158,6 @@ class TestDrivingLicense():
# assert res['code'] == expectData['code'] # assert res['code'] == expectData['code']
# @pytest.fixture(scope='function') # 用例中不能这么写
# @pytest.mark.usefixtures('test_vehicleLicenseList')
@allure.story("我的行驶证列表") @allure.story("我的行驶证列表")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/46536") @allure.link("http://yapi.hikcreate.com/project/32/interface/api/46536")
@allure.description("/vehicle/license/list") @allure.description("/vehicle/license/list")
...@@ -373,7 +375,7 @@ if __name__ == '__main__': ...@@ -373,7 +375,7 @@ if __name__ == '__main__':
for one in os.listdir('../../report/tmp'): # 列出对应文件夹的数据 '-m','scoreDetail' , for one in os.listdir('../../report/tmp'): # 列出对应文件夹的数据 '-m','scoreDetail' ,
if 'json' in one: if 'json' in one:
os.remove(f'../../report/tmp/{one}') os.remove(f'../../report/tmp/{one}')
pytest.main(['test_ ElectronicLicense.py', '-s', '--alluredir','../../report/tmp']) pytest.main(['test_ ElectronicLicense.py', '-s', '--alluredir','../../report/tmp'])
# 启动默认浏览器打开报告 # 启动默认浏览器打开报告
os.system('allure serve ../../report/tmp') os.system('allure serve ../../report/tmp')
......
...@@ -12,7 +12,7 @@ from config import BMCConfig ...@@ -12,7 +12,7 @@ from config import BMCConfig
# @allure.feature("信用分") # @allure.feature("信用分")
class TestCreditScore(): class TestCreditScore():
workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_testcase01_20210513.xlsx') # workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_credit_score_20210513.xlsx')
# inData = get_excelData(workBook, '信用分', 'creditscore')[0] # inData = get_excelData(workBook, '信用分', 'creditscore')[0]
def bmc_login_fixture(self): def bmc_login_fixture(self):
...@@ -21,10 +21,10 @@ class TestCreditScore(): ...@@ -21,10 +21,10 @@ class TestCreditScore():
indata = {"phone": "17822000000", indata = {"phone": "17822000000",
"encodedGesture": "67e6d10010533eed4bbe9659863bf6ee"} "encodedGesture": "67e6d10010533eed4bbe9659863bf6ee"}
res = BMC().bmc_login(indata) res = BMC().bmc_login(indata)
# setattr(BMCConfig, 'bmc_token', res[0]) setattr(BMCConfig, 'bmc_token', res[0])
# setattr(BMCConfig, 'bmc_pvt_token', res[1]) setattr(BMCConfig, 'bmc_pvt_token', res[1])
BMCConfig.headers['Pvt-Token'] = res[1] # BMCConfig.headers['Pvt-Token'] = res[1]
BMCConfig.headers['Token'] = res[0] # BMCConfig.headers['Token'] = res[0]
# #
# # print('Pvt-Token==========================', res[1]) # # print('Pvt-Token==========================', res[1])
# # print('Token==========================', res[0]) # # print('Token==========================', res[0])
...@@ -43,7 +43,7 @@ class TestCreditScore(): ...@@ -43,7 +43,7 @@ class TestCreditScore():
# print(expectData) # print(expectData)
#res = requests.post(url = url,headers =headers,json =req_data ) #res = requests.post(url = url,headers =headers,json =req_data )
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False)
# print(res) print(res)
# assert res['code'] == expectData['code'] # assert res['code'] == expectData['code']
...@@ -53,11 +53,11 @@ if __name__ == '__main__': ...@@ -53,11 +53,11 @@ if __name__ == '__main__':
# r'--alluredir=D:\项目\接口自动化\InterfaceAutoTest\report', '--clean-alluredir']) # r'--alluredir=D:\项目\接口自动化\InterfaceAutoTest\report', '--clean-alluredir'])
# #
# os.system('allure serve D:\项目\接口自动化\InterfaceAutoTest\\report') # os.system('allure serve D:\项目\接口自动化\InterfaceAutoTest\\report')
workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_testcase01_20210513.xlsx') workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_vehicle_steward_29_39_20210513.xlsx')
inData = get_excelData(workBook, '三车违法学习', 'getPaperIllegalstudy')[0] inData = get_excelData(workBook, '出行服务', 'agreevehiclesteward')
# # print(inData) print(inData)
TestCreditScore().bmc_login_fixture() # TestCreditScore().bmc_login_fixture()
TestCreditScore().test_creditscore(inData) # TestCreditScore().test_creditscore(inData)
# res = requests.get('http://testbmcapp.hikcreate.com/credit/myCredit/V2', params={"bCityCode":"520100","bNetTag":"trf_mgt"}, # res = requests.get('http://testbmcapp.hikcreate.com/credit/myCredit/V2', params={"bCityCode":"520100","bNetTag":"trf_mgt"},
# headers= { # headers= {
......
__author__ = 'fanxun' __author__ = 'fanxun'
__data__ = "2021-05-17 15:11" __data__ = "2021-05-17 15:11"
import pytest, allure, xlrd, os import pytest, allure, xlrd, os, random
import config import config
from common.utils.getExcelData import get_excelData from common.utils.getExcelData import get_excelData
from common.tools import request_main from common.tools import request_main
...@@ -10,112 +10,153 @@ from config import BMCConfig ...@@ -10,112 +10,153 @@ from config import BMCConfig
@allure.feature("三车违法学习") @allure.feature("三车违法学习")
class TestCreditScore(): class TestCreditScore():
workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_testcase01_20210513.xlsx') workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_illegal_study_20210513.xlsx')
@allure.story("查询最近成绩") # @allure.story("查询最近成绩")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/67503") # @allure.link("http://yapi.hikcreate.com/project/32/interface/api/67503")
@allure.description("/answer/recentGrade") # @allure.description("/answer/recentGrade")
@allure.title("{inData[testPoint]}") # @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'recentGradeIllegalstudy')) # @pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'recentGradeIllegalstudy'))
def test_recentGradeIllegalstudy(self,inData): # def test_recentGradeIllegalstudy(self,inData):
url = f"{BMCConfig().host}{inData['url']}" # url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] # method = inData['method']
req_data = inData['reqData'] # req_data = inData['reqData']
expectData = inData['expectData'] # expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True) # res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True)
assert res['code'] == expectData['code'] # assert res['code'] == expectData['code']
# #
@allure.story("获取典型案例视频") # @allure.story("获取典型案例视频")
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/57606") # @allure.link("http://yapi.hikcreate.com/project/31/interface/api/57606")
@allure.description("/illegal/study/video/typicalCase") # @allure.description("/illegal/study/video/typicalCase")
@allure.title("{inData[testPoint]}") # @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'typicalCaseIllegalstudy')) # @pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'typicalCaseIllegalstudy'))
def test_typicalCaseIllegalstudy(self, inData): # def test_typicalCaseIllegalstudy(self, inData):
url = f"{BMCConfig().host}{inData['url']}" # url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] # method = inData['method']
req_data = inData['reqData'] # req_data = inData['reqData']
expectData = inData['expectData'] # expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True) # res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True)
assert res['code'] == expectData['code'] # assert res['code'] == expectData['code']
@allure.story("获取试卷") @allure.story("获取试卷")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/69573") @allure.link("http://yapi.hikcreate.com/project/32/interface/api/69573")
@allure.description("/paper/getPaper") @allure.description("/paper/getPaper")
@allure.title("{inData[testPoint]}") @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'getPaperIllegalstudy')) @pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'getPaperIllegalstudy'))
def test_getPaperIllegalstudy(self, inData): def test_get_paper_illegal_study(self, inData):
url = f"{BMCConfig().host}{inData['url']}" url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True) headers = inData['headers']
topic_lists = res['data']['topicList'] res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code']
self.browsequestion = {} @pytest.fixture()
self.choosequestion = {} def test_pre_get_paper_illegal_study(self):
for item in topic_lists: """获取试卷套件"""
if item['topicType'] == 2: # 浏览题 url = f"{BMCConfig().host}/paper/getPaper"
self.browsequestion['topicId'] = item['topicId'] method = 'get'
self.browsequestion['topicType'] = item['topicType'] req_data = None
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False)
topic_lists = res['data']['topicList']
elif item['topicType'] == 1: browsequestion = {}
self.choosequestion['topicId'] = item['topicId'] choosequestion = {}
self.choosequestion['topicType'] = item['topicType'] browsequestion['answerId'] = res['data']['answerId']
choosequestion['answerId'] = res['data']['answerId']
assert res['code'] == expectData['code'] for item in topic_lists:
if item['topicType'] == 2 and len(browsequestion) == 1: # 浏览题
browsequestion['topicId'] = item['topicId']
browsequestion['topicType'] = item['topicType']
elif item['topicType'] == 1 and len(choosequestion) == 1:
choosequestion['topicId'] = item['topicId']
choosequestion['topicType'] = item['topicType']
return browsequestion, choosequestion
@allure.story("提交答案") @allure.story("提交答案")
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/67473") @allure.link("http://yapi.hikcreate.com/project/31/interface/api/67473")
@allure.description("/paper/submitAnswer") @allure.description("/paper/submitAnswer")
@allure.title("{inData[testPoint]}") @allure.title("{inData[testPoint]}")
@pytest.mark.usefixtures('test_pre_get_paper_illegal_study')
@pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'submitAnswerIllegalstudy')) @pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'submitAnswerIllegalstudy'))
def test_submitAnswerIllegalstudy(self, inData): def test_submitAnswerIllegalstudy(self, inData, test_pre_get_paper_illegal_study):
url = f"{BMCConfig().host}{inData['url']}" browsequestion, choosequestion = test_pre_get_paper_illegal_study
method = inData['method']
req_data = inData['reqData']
req_data
expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True)
assert res['code'] == expectData['code']
@allure.story("查询成绩(只有错题)")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/67485")
@allure.description("/answer/detail")
@allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'detailIllegalstudy'))
def test_detailIllegalstudy(self, inData):
url = f"{BMCConfig().host}{inData['url']}" url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
req_data['answerId'] = browsequestion['answerId']
req_data['topicId'] = browsequestion['topicId']
req_data['topicType'] = browsequestion['topicType']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True) case_num = inData['caseNum']
if case_num == 'submitAnswerIllegalstudy001':
req_data['answerId'] = browsequestion['answerId']
req_data['topicId'] = browsequestion['topicId']
elif case_num == 'submitAnswerIllegalstudy002':
req_data['answerId'] = browsequestion['answerId']
while True:
topic_id = random.randint(1, 100)
if topic_id != browsequestion['topicId']:
req_data['topicId'] = topic_id
break
elif case_num == 'submitAnswerIllegalstudy003':
req_data['topicId'] = browsequestion['topicId']
while True:
answer_id = random.randint(1, 100)
if answer_id != browsequestion['answerId']:
req_data['answerId'] = answer_id
break
elif case_num == 'submitAnswerIllegalstudy004':
req_data['answerId'] = browsequestion['answerId']
req_data['topicId'] = browsequestion['topicId']
req_data['topicType'] = 1
elif case_num == 'submitAnswerIllegalstudy005':
req_data['answerId'] = choosequestion['answerId']
req_data['topicId'] = choosequestion['topicId']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("查询答题记录列表") # @allure.story("查询成绩(只有错题)")
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/67497") # @allure.link("http://yapi.hikcreate.com/project/32/interface/api/67485")
@allure.description("/answer/logList") # @allure.description("/answer/detail")
@allure.title("{inData[testPoint]}") # @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'logListIllegalstudy')) # @pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'detailIllegalstudy'))
def test_logListIllegalstudy(self, inData): # def test_detailIllegalstudy(self, inData):
url = f"{BMCConfig().host}{inData['url']}" # url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] # method = inData['method']
req_data = inData['reqData'] # req_data = inData['reqData']
expectData = inData['expectData'] # expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True) # res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True)
assert res['code'] == expectData['code'] # assert res['code'] == expectData['code']
#
@allure.story("答题记录查询") # @allure.story("查询答题记录列表")
@allure.link("http://yapi.hikcreate.com/project/32/interface/api/67491") # @allure.link("http://yapi.hikcreate.com/project/31/interface/api/67497")
@allure.description("/answer/log") # @allure.description("/answer/logList")
@allure.title("{inData[testPoint]}") # @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'logIllegalstudy')) # @pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'logListIllegalstudy'))
def test_logIllegalstudy(self, inData): # def test_logListIllegalstudy(self, inData):
url = f"{BMCConfig().host}{inData['url']}" # url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] # method = inData['method']
req_data = inData['reqData'] # req_data = inData['reqData']
expectData = inData['expectData'] # expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True) # res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True)
assert res['code'] == expectData['code'] # assert res['code'] == expectData['code']
#
# @allure.story("答题记录查询")
# @allure.link("http://yapi.hikcreate.com/project/32/interface/api/67491")
# @allure.description("/answer/log")
# @allure.title("{inData[testPoint]}")
# @pytest.mark.parametrize("inData", get_excelData(workBook, '三车违法学习', 'logIllegalstudy'))
# def test_logIllegalstudy(self, inData):
# url = f"{BMCConfig().host}{inData['url']}"
# method = inData['method']
# req_data = inData['reqData']
# expectData = inData['expectData']
# res = request_main(url=url, headers=None, method=method, data=req_data, has_token=True)
# assert res['code'] == expectData['code']
if __name__ == '__main__': if __name__ == '__main__':
pytest.main(['-s', '-v', 'test_illegalstudy.py', pytest.main(['-s', '-v', 'test_illegalstudy.py',
......
...@@ -10,7 +10,7 @@ from config import BMCConfig ...@@ -10,7 +10,7 @@ from config import BMCConfig
@allure.feature("积分商城") @allure.feature("积分商城")
class TestCreditScore(): class TestCreditScore():
workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_testcase01_20210513.xlsx') workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_integral_20210513.xlsx')
@allure.story("查询我的积分") @allure.story("查询我的积分")
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/55860") @allure.link("http://yapi.hikcreate.com/project/31/interface/api/55860")
...@@ -22,33 +22,51 @@ class TestCreditScore(): ...@@ -22,33 +22,51 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("签到")
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/55878") @allure.story("查询我的签到情况")
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/55869")
@allure.description("/integral/center/sign") @allure.description("/integral/center/sign")
@allure.title("{inData[testPoint]}") @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '积分商城', 'postSignIntegral')) @pytest.mark.parametrize("inData", get_excelData(workBook, '积分商城', 'getsignIntegral'))
def test_post_sign_integral(self, inData): def test_get_sign_integral(self, inData):
url = f"{BMCConfig().host}{inData['url']}" url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
return res['data']['canSignInToday']
@allure.story("查询我的签到情况") @pytest.fixture()
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/55869") def test_pre_get_sign_integral(self):
"""签到前置用例"""
url = f"{BMCConfig().host}/integral/center/sign"
method = 'get'
req_data = None
headers = None
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
return res['data']['canSignInToday']
@allure.story("签到")
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/55878")
@allure.description("/integral/center/sign") @allure.description("/integral/center/sign")
@allure.title("{inData[testPoint]}") @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '积分商城', 'getsignIntegral')) @pytest.mark.usefixtures('test_pre_get_sign_integral')
def test_get_sign_integral(self, inData): @pytest.mark.parametrize("inData", get_excelData(workBook, '积分商城', 'postSignIntegral'))
def test_post_sign_integral(self, inData, test_pre_get_sign_integral):
if not test_pre_get_sign_integral:
pytest.skip(msg="今天已经进行签到过,此用例不执行")
url = f"{BMCConfig().host}{inData['url']}" url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("查询待领取积分清单") @allure.story("查询待领取积分清单")
...@@ -61,7 +79,9 @@ class TestCreditScore(): ...@@ -61,7 +79,9 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
self.task_list = res['data']['list']
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("查询积分商品") @allure.story("查询积分商品")
...@@ -74,8 +94,8 @@ class TestCreditScore(): ...@@ -74,8 +94,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
# headers = config.BMCConfig.headers headers = inData['headers']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("查询积分规则") @allure.story("查询积分规则")
...@@ -88,7 +108,8 @@ class TestCreditScore(): ...@@ -88,7 +108,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("设置签到提醒开关") @allure.story("设置签到提醒开关")
...@@ -101,7 +122,8 @@ class TestCreditScore(): ...@@ -101,7 +122,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("任务中心主页") @allure.story("任务中心主页")
...@@ -114,7 +136,8 @@ class TestCreditScore(): ...@@ -114,7 +136,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("领取积分") @allure.story("领取积分")
...@@ -123,11 +146,24 @@ class TestCreditScore(): ...@@ -123,11 +146,24 @@ class TestCreditScore():
@allure.title("{inData[testPoint]}") @allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '积分商城', 'receiveIntegral')) @pytest.mark.parametrize("inData", get_excelData(workBook, '积分商城', 'receiveIntegral'))
def test_receive_integral(self, inData): def test_receive_integral(self, inData):
case_num = inData['caseNum']
url = f"{BMCConfig().host}{inData['url']}" url = f"{BMCConfig().host}{inData['url']}"
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
for task in self.task_list:
if task['status'] == 2 and case_num == 'receiveIntegral001': # 2表示可领取
req_data['taskCode'] = task['taskCode']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
break
elif task['status'] != 2 and case_num == 'receiveIntegral002':
req_data['taskCode'] = task['taskCode']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
break
else:
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
break
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("获取关注信息") @allure.story("获取关注信息")
...@@ -140,7 +176,8 @@ class TestCreditScore(): ...@@ -140,7 +176,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("商城中的商品") @allure.story("商城中的商品")
...@@ -153,7 +190,8 @@ class TestCreditScore(): ...@@ -153,7 +190,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("商品的详情") @allure.story("商品的详情")
...@@ -166,7 +204,8 @@ class TestCreditScore(): ...@@ -166,7 +204,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("兑换商品接口") @allure.story("兑换商品接口")
...@@ -179,7 +218,8 @@ class TestCreditScore(): ...@@ -179,7 +218,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("查询商品的适用门店列表") @allure.story("查询商品的适用门店列表")
...@@ -192,7 +232,8 @@ class TestCreditScore(): ...@@ -192,7 +232,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("查询兑换记录") @allure.story("查询兑换记录")
...@@ -205,7 +246,8 @@ class TestCreditScore(): ...@@ -205,7 +246,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("查询兑换记录详情") @allure.story("查询兑换记录详情")
...@@ -218,7 +260,8 @@ class TestCreditScore(): ...@@ -218,7 +260,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
@allure.story("关注成功回调") @allure.story("关注成功回调")
...@@ -231,7 +274,8 @@ class TestCreditScore(): ...@@ -231,7 +274,8 @@ class TestCreditScore():
method = inData['method'] method = inData['method']
req_data = inData['reqData'] req_data = inData['reqData']
expectData = inData['expectData'] expectData = inData['expectData']
res = request_main(url=url, headers=None, method=method, data=req_data, has_token=False) headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code'] assert res['code'] == expectData['code']
if __name__ == '__main__': if __name__ == '__main__':
pytest.main(['-s', '-v', 'test_integral.py', pytest.main(['-s', '-v', 'test_integral.py',
......
__author__ = 'fanxun'
__data__ = "2021-05-18 14:41"
import allure, xlrd, pytest
from config import BMCConfig
from common.utils.getExcelData import get_excelData
from common.tools import request_main
@allure.feature("出行服务")
class TestCreditScore():
workBook = xlrd.open_workbook(f'{BMCConfig.root_path}/test_case_data/bmc/bmc_vehicle_steward_29_39_20210513.xlsx')
@allure.story("获取用户授权")
@allure.link("http://yapi.hikcreate.com/project/31/interface/api/75421")
@allure.description("/vehicle/steward/authorization/authorizationOfUse")
@allure.title("{inData[testPoint]}")
@pytest.mark.parametrize("inData", get_excelData(workBook, '出行服务', 'authorizationOfUsevehicle_steward'))
def test_my_integral(self,inData):
url = f"{BMCConfig().host}{inData['url']}"
method = inData['method']
req_data = inData['reqData']
expectData = inData['expectData']
headers = inData['headers']
res = request_main(url=url, headers=headers, method=method, data=req_data, has_token=False)
assert res['code'] == expectData['code']
\ No newline at end of file
Markdown is supported
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