天天看点

allure 测试报告本地打开_Allure 自动化测试报告使用详解

这一节主要是记录allure的内容以及用法,怎么让他生成一个完整的想要的报告。

allure生成的报告和其他五花八门的报告对比了一下,它的可读性是最好、最直观的。这不仅仅是我想要的效果,也是很多小伙伴想要的结果,毕竟这是给领导看,而且也算是自己老大成果的汇总。

一、Allure相关的内容:

Allure用例描述

使用方法

参数值

参数说明

@allure.epic()

epic描述

定义项目、当有多个项目是使用。往下是feature

@allure.feature()

模块名称

用例按照模块区分,有多个模块时给每个起名字

@allure.story()

用例名称

一个用例的描述

@allure.title(用例的标题)

用例标题

一个用例标题

@allure.testcase()

测试用例的连接地址

自动化用例对应的功能用例存放系统的地址

@allure.issue()

缺陷地址

对应缺陷管理系统里边的缺陷地址

@allure.description()

用例描述

对测试用例的详细描述

@allure.step()

操作步骤

测试用例的操作步骤

@allure.severity()

用例等级

blocker  、critical  、normal  、minor  、trivial

@allure.link()

定义连接

用于定义一个需要在测试报告中展示的连接

@allure.attachment()

附件

添加测试报告附件

总共主要的就以上这些,常用的大概有一半吧 。

二、对于这其中常用的做一些使用实例:

代码结构:

allure 测试报告本地打开_Allure 自动化测试报告使用详解

登录是一个前置操作 ,拿出来后单独存放,loging.py文件内容:

#__*__coding:utf-8 __*__

importallure

@allure.step("操作步骤: 登录")deflongin():'''登录操作'''

print("这个是登录的接口")

conftest.py这个文件主要放一些公共的内容

#__*__coding:utf-8 __*__

importpytestfrom common_contion.loging importlongin

@pytest.fixture(scope="session")deflogin_fixture():

longin()print("这个是前置操作:登录")

case----test_case.py文件主要存放一些测试用例,内容如下:

#__*__coding:utf-8 __*__

importpytestimportallurefrom common_contion.dome_Interface import *@allure.severity("blocker")

@allure.epic("项目名称: 会所资源管理系统")

@allure.issue("http://149.335.82.12:8080/zentao/bug-view-1.html") #禅道bug地址

@allure.testcase("http://149.335.82.12:8080/zentao/testcase-view-5-1.html") #禅道用例连接地址

@allure.feature("房间管理模块")classTestdome1(object):deftest_dome_1(self,login_fixture):'''用例一的用例描述: 我是第一个用例,我只有一个步骤'''

print("第一个测试用例")

jieko_dome_1()deftest_dome_2(self,login_fixture):'''用例二的用例描述: 我是第二个用例,我只有一个步骤'''

print("第二个测试用例")

jieko_dome_2()

@allure.severity("critical")

@allure.epic("项目名称: 会所资源管理系统")

@allure.feature("资源管理模块")

@allure.story("用例的标题: 对会所资源进行增、删、改、查")

@allure.issue("http://149.335.82.12:8080/zentao/bug-view-1.html") #禅道bug地址

@allure.testcase("http://149.335.82.12:8080/zentao/testcase-view-5-1.html") #禅道用例连接地址

classTestdome3(object):deftest_dome_3(self,login_fixture):'''用例三的用例描述: 我是第三个用例,我是有多个步骤;'''

print("第三个测试用例")

f=jieko_dome_3()

f.jieko_dome_3_1()

f.jieko_dome_3_2()

f.jieko_dome_3_3()

f.jieko_dome_3_4()

common_contion----dome_Interface.py文件主要存放用例相关的接口内容:

#__*__coding:utf-8 __*__

importalluredefjieko_dome_1():'''用例描述: 用例一的接口'''

print("这个是第一个用例对应的接口")defjieko_dome_2():'''用例描述: 用例二的接口'''

print("这个是第二个用例对应的接口")

@allure.feature("资源管理模块")classjieko_dome_3(object):'''这个是一个模块的测试'''@allure.step("操作步骤: 新增资源个人信息")defjieko_dome_3_1(self):'''用例描述: 用例三的新增内容接口'''

print("这个是第三个用例对应的接口一")

@allure.step("操作步骤: 查询资源在线信息")defjieko_dome_3_2(self):'''用例描述: 用例三的查询内容接口'''

print("这个是第三个用例对应的接口二")

@allure.step("操作步骤: 修改资源身份信息")defjieko_dome_3_3(self):'''用例描述: 用例三的编辑内容接口'''

print("这个是第三个用例对应的接口三")

@allure.step("操作步骤: 删除资源全部信息")defjieko_dome_3_4(self):'''用例描述: 用例三的删除内容接口'''

print("这个是第三个用例对应的接口四")

三、执行测试用例:

命令行模式执行用例

1、pytest --alluredir ./reopore/allure_row_1

执行结果:

allure 测试报告本地打开_Allure 自动化测试报告使用详解

会在工程中生成一个 /reopore/allure_row_1的文件,如图:

allure 测试报告本地打开_Allure 自动化测试报告使用详解

2、dome>allure serve reopore/allure_row_1

执行命令后将收集的数据加载到allure报告中,执行结果:

allure 测试报告本地打开_Allure 自动化测试报告使用详解

会自动使用默认浏览器打开报告

报告样式展示如下:

allure 测试报告本地打开_Allure 自动化测试报告使用详解
allure 测试报告本地打开_Allure 自动化测试报告使用详解
allure 测试报告本地打开_Allure 自动化测试报告使用详解

以上就是allure的各种装饰器加载后展示的报告的样式了。

有大佬看到了欢迎留言。