51Testing软件测试论坛
标题:
如何输出allure让测试报告更为精彩
[打印本页]
作者:
lsekfe
时间:
2022-9-6 10:15
标题:
如何输出allure让测试报告更为精彩
定制化后的allure测试报告效果展示
[attach]142521[/attach]
[attach]142522[/attach]
如何定制化输出锦上添花的allure测试报告
使用前,先导入allure模块。
import allure
复制代码
使用前,先熟悉运行测试用例的有关allure的命令行参数
--allure-severities=SEVERITIES_SET
--allure-epics=EPICS_SET
--allure-features=FEATURES_SET
--allure-stories=STORIES_SET
--allure-ids=IDS_SET Comma-separated list of IDs.
--allure-link-pattern=LINK_TYPE:LINK_PATTERN
--alluredir=DIR Generate Allure report in the specified directory (may
--clean-alluredir Clean alluredir folder if it exists
--allure-no-capture Do not attach pytest captured logging/stdout/stderr to Allure Report
复制代码
1、feature——测试用例特性(主要功能模块):一般是在类上
使用方法:@allure.feature()
[attach]142523[/attach]
[attach]142524[/attach]
[attach]142525[/attach]
可以根据feature特性过滤出测试用例执行:
pytest test_allure.py --allure-features="登录模块" -vs
2、story——feature功能模块下的分支功能:一般是在方法上
使用方法:@allure.story()
[attach]142526[/attach]
[attach]142527[/attach]
可以根据story特性过滤出测试用例执行:
pytest test_allure.py --allure-stories="登录失败" -vs
复制代码
如果希望执行多个story或者feature,多个story名或feature名中间加","即可:
pytest test_allure.py --allure-stories="登录失败","登出失败" -vs
复制代码
【注意】
①–allure-features和–allure-stories同时使用时,如果–allure-features中的用例包括了–allure-stories的用例,则只执行–allure-features的用例;如果不包含,则同时执行–allure-features和–allure-stories的用例。
②虽然通过?pytest -m?命令行参数运行测试用例同样可以达到分组运行测试用例的目的;但是使用allure特性来实现分组运行测试用例同样可以在allure报告中展示,使allure特性更直观。
3、severity——测试用例的严重级别
场景:通常测试有冒烟测试、验证上线测试等场景,按照重要性级别来分别执行。比如上线前要把主流程和重要模块都跑一遍。
解决:通过在方法、函数和类上添加allure.severity来附加标记。
执行:?pytest 文件名 --allure-severities=normal -vs?
Allure中对严重级别的定义:
·
blocker级别:中断缺陷(客户端程序无响应,无法执行下一步操作)
·
critical级别:临界缺陷( 功能点缺失)
·
normal级别:普通缺陷(数值计算错误)
·
minor级别:次要缺陷(界面错误与UI需求不符)
·
trivial级别:轻微缺陷(必输项无提示,或者提示不规范)
使用方法:@allure.severity(allure.severity_level.CRITICAL) 或者@allure.severity('critical')
[attach]142528[/attach]
[attach]142529[/attach]
4、step——测试用例的步骤
使用方法:
①@allure.step()?只能以装饰器的形式放在类或者方法上面。
②with allure.step()?:? 可以放在测试用例方法里面,但测试步骤的代码需要被该语句包含。
[attach]142532[/attach]
[attach]142533[/attach]
5、attach——用于向测试报告中输入一些附加的信息,通常是一些测试数据信息
使用方法:?allure.attach(body, name, attachment_type, extension)?
参数:
·
body - 要写入文件的原始内容
·
name - 包含文件名的字符串
·
attachment_type - 其中一个 allure.attachment_type值
·
extension - 提供的将用作创建文件的扩展名
[attach]142534[/attach]
[attach]142535[/attach]
6、link/issue/testcase——链接
使用方法:
@allure.link()
@allure.issue()
@allure.testcase()
[attach]142536[/attach]
[attach]142537[/attach]
7、description——用例描述
使用方法:
@allure.description() 提供描述字符串的装饰器。
@allure.description_html() 提供一些HTML在测试用例的描述部分。
[attach]142538[/attach]
[attach]142539[/attach]
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2