追迷梦境 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格式报告文件