追迷梦境 2020-07-08
allure用例描述:使用方法 参数值 参数说明 @allure.epic() epic描述 敏捷里面的概念,定义史诗,往下是feature @allure.feature() 模块名称 功能点的描述,往下是story @allure.story() 用户故事 用户故事,往下是title @allure.title(用例的标题) 用例的标题 重命名html报告名称 @allure.testcase() 测试用例的链接地址 对应功能测试用例系统里面的case @allure.issue() 缺陷 对应缺陷管理系统里面的链接 @allure.description() 用例描述 测试用例的描述 @allure.step() 操作步骤 测试用例的步骤 @allure.severity() 用例等级 blocker,critical,normal,minor,trivial @allure.link() 链接 定义一个链接,在测试报告展现 @allure.attachment() 附件 报告添加附件
具体使用:
新建conftest.py文件:
import pytest
@pytest.fixture()
def start():
print("测试开始:")
yield
print("测试结束.")新建测试文件test_demo.py文件:
import allure
from common import Log
import requests
@allure.step(‘这是测试步骤‘)
def step_1():
print("初始化数据")
@allure.epic(‘测试天气接口‘.center(30,‘*‘))
@allure.feature(‘测试模块‘)
@allure.suite(‘这是测试套件‘)
class TestGetWeather:
"""测试模块"""
def setup(self):
"""所有用例执行前的条件"""
self.logger = Log.MyLog() #调用一下log方法,监控日志
@allure.severity(‘normal‘)
@allure.story(‘故事1:获取天气信息‘)
@allure.title(‘用例标题:获取单个城市的天气‘)
@allure.description(‘用例描述:获取xx地方的天气‘)
@allure.testcase(‘测试用例地址:www.xxx.com‘)
@allure.issue(‘禅道缺陷管理地址:https://www.zentao.xxxxxxxxx/‘)
@allure.tag(‘这是tag标记‘)
def test_case1(self,action):
"""
测试获取天气信息接口:get方法
"""
step_1()
# api:host
url = ‘https://xxx‘
params = {‘version‘:‘x‘,‘appid‘:xxxxxxx}
r = requests.get(url=url,params=params)
print(‘返回数据: %s‘ %r.json())
self.logger.info(‘返回数据: %s‘ % r.json())
最后,命令行运行一下:cmd到脚本所在目录下
pytest --alluredir ./report/allure-result #运行,并指定路径,生成allure-result
allure serve ./report/allure-result #启动allure服务,默认打开浏览器进行查看html报告 基于之前生成的json、yaml文件,通过命令行终端cd到用例所在目录,执行hrun 用例名称即可。执行完测试用例会在当前目录生成一个report文件夹,里面会有一个按时间戳生成的html格式报告文件