前言
今天给大伙展示一下如何生成一个漂亮的allure测试报告,同时呢希望能帮助到大家。
定制化后的allure测试报告效果展示
如何定制化输出锦上添花的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()
可以根据feature特性过滤出测试用例执行:
pytest test_allure.py --allure-features="登录模块" -vs
2、story——feature功能模块下的分支功能:一般是在方法上
使用方法: @allure.story()
可以根据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')
4、step——测试用例的步骤
使用方法:
① @allure.step() 只能以装饰器的形式放在类或者方法上面
② with allure.step() : 可以放在测试用例方法里面,但测试步骤的代码需要被该语句包含
5、attach——用于向测试报告中输入一些附加的信息,通常是一些测试数据信息
使用方法: allure.attach(body, name, attachment_type, extension)
参数:
body
- 要写入文件的原始内容name
- 包含文件名的字符串attachment_type
- 其中一个allure.attachment_type
值extension
- 提供的将用作创建文件的扩展名
6、link/issue/testcase——链接
使用方法:
- @allure.link()
- @allure.issue()
- @allure.testcase()
7、description——用例描述
使用方法:
- @allure.description() 提供描述字符串的装饰器
- @allure.description_html() 提供一些HTML在测试用例的描述部分
结语
这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取