基本特性:
-
@allure.feature(“test feature describition”) ## 用于定义被测试的功能,被测产品的需求点
-
@allure.story(“test story describition”) ## 用于定义被测功能的用户场景,即子功能点
-
with allure.step(test step describition"): ## 用于将一个测试用例,分成几个步骤在报告中输出
-
@allure.step(“test step describition”) # 用于将一些通用的函数作为测试步骤输出到报告,调用此函数的地方会向报告中输出步骤
-
@allure.severity(“critical”). Allure中对严重界别的定义,以下为取值范围:
1)blocker:中断缺陷(客户端程序无响应,无法执行下一步操作)
2)critical:临界缺陷( 功能点缺失)
3)normal:普通缺陷(数值计算错误)
4)minor:次要缺陷(界面错误与UI需求不符)
5)trivial:轻微缺陷(必输项无提示,或者提示不规范) -
allure.attach(name,contents,type) # 在报告中增加附件
1)name:在报告中显示的附件名称
2)content:表示添加附件的内容
3)type: 添加的附件类型(支持:TEXT、HTML、XML、PNG、JPG、JSON、OTHER) allure.attach_type.TEXT -
allure.issue(*issue) #测试报告中对应的bug
-
allure.testcase(*testcase) #测试报告中对应的testcase
@allure.feature(''测试featureA功能")
class TestFeature():
@allure.story("测试场景一")
@allure.severity("blocker")
@allure.issue("http://www.pms-XXX.bug-XXX)
@allure.testcase("http://www.testlink.com")
def test_story1(self):
"""用例描述"""
with allure.step("测试步骤一"):
with open("/path/screencap.png", "rb") as f:
allure.attach("当前截图",f.read(),allure.attach_type.PNG)
with allure.step(“测试步骤二”):
pass
self.common_step1()
self.common_step2()
@allure.step2("通用测试步骤三"):
def common_step():
pass
@allure.step("通用测试步骤四,参数1:{0},参数2:{1}"):#测试步骤,可以通过format机制自动获取函数参数
def common_step2(arg1,arg2):
pass
测试用例fail时自动保存当前截图并attach到测试报告
测试用例中assert判断语句用try……except捕获,然后进行截图保存并attach处理
def test1():
try:
assert 1==2
except AssertionError as e:
cmd.Fail(failReason) #通用函数处理fail
def Fail(failReason):
f=savescreencap(imagePath)#保存截图到本地
with open(imagePath, 'rb') as f:
allure.attach("图片匹配失败,目标图片",f.read(), allure.attach_type.PNG) #attach 截图到测试报告