- Allure的装饰器解释
- @allure.parent_suite,@allure.suite,@allure.sub_suite
- @allure.epic, @allure.feature, @allure.story,@allure.title
- @allure.id,@allure.link,@allure.label,@allure.issue,@allure.description,@allure.severity,@allure.tag,@allure.testcase,@allure.description_html
- @allure.description_html不存在时
- @allure.severity的参数说明
- @allure.link的参数说明
- 调试的示例代码
- allure.dynamic的用法--动态修改报告的属性值
- allure方法
- allure.attach.flie 上传文件
- allure.attach 上传文本
- Allure 命令
前置条件
allure-pytest==2.9.45
allure-python-commons==2.9.45
@allure.parent_suite,@allure.suite,@allure.sub_suite
@allure.parent_suite,@allure.suite,@allure.sub_suite对应的是
allure报告中的测试套的三个级别.爷爷父亲儿子.然后下一级就是测用例的标题.
@allure.epic, @allure.feature, @allure.story,@allure.title
@allure.epic, @allure.feature, @allure.story,@allure.title对应
功能中的一级菜单,二级菜单,三级菜单,用例标题
@allure.id,@allure.link,@allure.label,@allure.issue,@allure.description,@allure.severity,@allure.tag,@allure.testcase,@allure.description_html
@allure.id 用例id,@allure.link 用例的超链接,@allure.label 用例的标签
@allure.issue 记录用例的问题(超链接),@allure.description 用例的描述
@allure.severity 用例的优先级,@allure.tag 用例的标记,@allure.testcase 记录用例的地址(超链接)
@allure.description_html 用例的描述的网址(超链接),若存在description_html则@allure.description不显示
@allure.description_html不存在时
@allure.severity的参数说明
优先级的参数,也可以直接用后面的字符
class Severity(str, Enum):
BLOCKER = 'blocker'
CRITICAL = 'critical'
NORMAL = 'normal'
MINOR = 'minor'
TRIVIAL = 'trivial'
@allure.link的参数说明
class LinkType(object):
LINK = 'link'
ISSUE = 'issue'
TEST_CASE = 'test_case'
可以看到有三种link类型,link也可以是 issue
import allure
import pytest
from allure_commons.types import LinkType, Severity
@allure.parent_suite('我是parent_suite')
@allure.suite('我是suite')
@allure.sub_suite('我是sub_suite')
@allure.epic('我是epic')
@allure.feature('我是feature')
@allure.story('我是story')
class TestAllureDemo:
@allure.id('我是id')
@allure.title('我是title')
@allure.link('https://www.baidu.com/', LinkType.ISSUE, '我是link_ISSUE')
@allure.label('我是label')
@allure.issue('https://www.baidu.com/', '我是issue')
@allure.description('我是description')
@allure.severity(Severity.BLOCKER)
@allure.tag('我是tag')
@allure.testcase('https://www.baidu.com/', 'testcase')
def test_01(self):
self.assert_one(1, 1)
@allure.step('我是断言')
def assert_one(self, a, b):
assert a == b
@allure.id('我是id')
@allure.title('我是title')
@allure.link('https://www.baidu.com/', LinkType.LINK, '我是link')
@allure.label('我是label')
@allure.issue('https://www.baidu.com/', '我是issue')
@allure.description('我是description')
@allure.severity('我是severity')
@allure.tag('我是tag')
@allure.testcase('https://www.baidu.com/', '我是testcase')
def test_02(self):
allure.dynamic.mro()
allure.dynamic.title('我是修改后的title')
allure.dynamic.link('https://www.baidu.com/', LinkType.LINK, '我是修改后的link')
allure.dynamic.label('我是修改后的label')
allure.dynamic.issue('https://www.baidu.com/', '我是修改后的issue')
allure.dynamic.description('我是修改后的description')
allure.dynamic.severity('我是修改后的severity')
allure.dynamic.tag('我是修改后的tag')
allure.dynamic.testcase('https://www.baidu.com/', '我是修改后的testcase')
assert 1 > 1
allure.dynamic的用法–动态修改报告的属性值
allure.dynamic主要是用于动态的修改用例在报告中的一些参数,下面列举了所有的可改的参数
@allure.id('我是id')
@allure.title('我是title')
@allure.link('https://www.baidu.com/', LinkType.LINK, '我是link')
@allure.label('我是label')
@allure.issue('https://www.baidu.com/', '我是issue')
@allure.description('我是description')
@allure.severity('我是severity')
@allure.tag('我是tag')
@allure.testcase('https://www.baidu.com/', '我是testcase')
def test_02(self):
allure.dynamic.mro()
allure.dynamic.title('我是修改后的title')
allure.dynamic.link('https://www.baidu.com/', LinkType.LINK, '我是修改后的link')
allure.dynamic.label('我是修改后的label')
allure.dynamic.issue('https://www.baidu.com/', '我是修改后的issue')
allure.dynamic.description('我是修改后的description')
allure.dynamic.severity('我是修改后的severity')
allure.dynamic.tag('我是修改后的tag')
allure.dynamic.testcase('https://www.baidu.com/', '我是修改后的testcase')
assert 1 > 1
示例
def allure_attach_file(file_path):
info = '上传文件&'
# 文件路径,文件名
allure.attach.file(file_path, f"{info}{os.path.basename(file_path)}")
allure.attach 上传文本
def allure_attach_text(body, name):
# 文本内容,文本名
allure.attach(body, name)
例如 allure_attach_body(“我是测试文本”, “测试文本111”)
点我去查看,Allure命令,生成并打开报告,指定报告的ip和端口等(多系统通用)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)