1、Allure2 报告中添加用例描述
Allure2 用例描述
- 应用场景:Allure 支持往测试报告中对测试用例添加非常详细的描述语,用来描述测试用例详情。
- Allure 添加描述的四种方式:
- 方式一:使用装饰器
@allure.description()
传递一个字符串参数来描述测试用例。 - 方式二:使用装饰器
@allure.description_html
传递一段 HTML 文本来描述测试用例。 - 方式三:直接在测试用例方法中通过编写文档注释的方法来添加描述。
- 方式四:用例代码内部动态添加描述信息。
- 方式一:使用装饰器
Allure2 用例描述
- 方式一:添加装饰器
@allure.description()
。
@allure.description("""
多行描述语:<br/>
这是通过传递字符串参数的方式添加的一段描述语,<br/>
使用的是装饰器 @allure.description
""")
def test_description_provide_string():
assert True
Allure2 用例描述
- 方式二:添加装饰器
@allure.description_html()
@allure.description_html("""html代码块""")
def test_description_privide_html():
assert True
Allure2 用例描述
- 方式三:直接在代码中添加文档注释。
def test_description_docstring():
"""
直接在测试用例方法中 </br>
通过编写文档注释的方法 </br>
来添加描述。 </br>
:return:
"""
assert True
Allure2 用例动态描述
- 方式四:代码中添加动态描述信息。
import allure
@allure.description("""这个描述将被替换""")
def test_dynamic_description():
assert 42 == int(6 * 7)
allure.dynamic.description('这是最终的描述信息')
# allure.dynamic.description_html(''' html 代码块 ''')
2、Allure2报告中添加用例优先级
Alluer2 报告中添加用例优先级
- 应用场景:用例执行时,希望按照严重级别执行测试用例。
- 解决:可以为每个用例添加一个等级的装饰器,用法:
@allure.severity
。
Alluer2 报告中添加用例优先级
- Allure 对严重级别的定义分为 5 个级别:
- Blocker级别:中断缺陷(客户端程序无响应,无法执行下一步操作)。
- Critical级别:临界缺陷( 功能点缺失)。
- Normal级别:普通缺陷(数值计算错误)。(默认)
- Minor级别:次要缺陷(界面错误与UI需求不符)。
- Trivial级别:轻微缺陷(必输项无提示,或者提示不规范)。
Alluer2 报告中添加用例优先级
- 使用装饰器添加用例方法/类的级别。
- 类上添加的级别,对类中没有添加级别的方法生效。
- 运行时添加命令行参数
--allure-severities
:pytest --alluredir ./results --clean-alluredir --allure-severities normal,blocker
"""
@Author: 霍格沃兹测试开发学社-西西
@Desc: 更多测试开发技术探讨,请访问:https://ceshiren.com/t/topic/15860
"""
import allure
def test_with_no_severity_label():
pass
@allure.severity(allure.severity_level.TRIVIAL)
def test_with_trivial_severity():
pass
@allure.severity(allure.severity_level.NORMAL)
def test_with_normal_severity():
pass
@allure.severity(allure.severity_level.NORMAL)
class TestClassWithNormalSeverity(object):
def test_inside_the_normal(self):
pass
@allure.severity(allure.severity_level.CRITICAL)
def test_critical_severity(self):
pass
@allure.severity(allure.severity_level.BLOCKER)
def test_blocker_severity(self):
pass
指定级别运行的时候,需要注意