下来,我们基于已有的代码进行断言的引入:
# !/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2024/01
# @Author : Laopi
import json
import logging
import allure
from testcase.conftest import *
@allure.epic("添加线索模块")
class TestCases:
def test_case(self,get_baseUrl,get_workbook,get_token):
baseUrl = get_baseUrl
logging.info(baseUrl['host'])
workbook = get_workbook
sheets = workbook.sheetnames
for i in range(len(sheets)-1):
logging.info(i+1)
workbook._active_sheet_index = i+1
sheet = workbook.active
cookie = get_token
url = baseUrl['host'] + sheet.cell(row=2, column=2).value
for i in range(6, sheet.max_row + 1):
headers = json.loads(sheet.cell(i, 2).value)
headers.update({'Admin-Token': cookie})
if headers['Content-Type'] == 'application/json':
data = json.dumps(json.loads(sheet.cell(i, 3).value))
else:
data = json.loads(sheet.cell(i, 3).value)
response1 = requests.post(url=url, headers=headers, data=data)
logging.info(response1.json())
expectResult = sheet.cell(i, 5).value
assert json.loads(expectResult)['code'] == response1.json()['code']
但
是执行的过程中,我们发现,从始至终都只有一个方法,只要是执行失败了,全都失败了。
由此,我们引入新的知识点,allure的相关用法,来优化上述写在一起的代码。
对于allure装饰器函数,有以下的用法说明
来做一个解释:
我先画一个Excel的用例如下: