这一节主要是记录allure的内容以及用法,怎么让他生成一个完整的想要的报告。
allure生成的报告和其他五花八门的报告对比了一下,它的可读性是最好、最直观的。这不仅仅是我想要的效果,也是很多小伙伴想要的结果,毕竟这是给领导看,而且也算是自己老大成果的汇总。
一、Allure相关的内容
总共主要的就以上这些,常用的大概有一半吧 。
同时,在这我准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,这份测试文档资料也打包在里面啦,免费领取!
软件测试视频教程观看处:
【B站最系统自动化测试教程】整整400集,从入门到项目实战,只需18天,手把手带你进阶自动化测试!!!
二、对于这其中常用的做一些使用实例
代码结构:
登录是一个前置操作 ,拿出来后单独存放,loging.py文件内容:
# __*__coding:utf-8 __*__
import allure
@allure.step("操作步骤: 登录")
def longin():
'''登录操作'''
print("这个是登录的接口")
conftest.py这个文件主要放一些公共的内容
# __*__coding:utf-8 __*__
import pytest
from common_contion.loging import longin
@pytest.fixture(scope="session")
def login_fixture():
longin()
print("这个是前置操作:登录")
case----test_case.py文件主要存放一些测试用例,内容如下:
# __*__coding:utf-8 __*__
import pytest
import allure
from 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("房间管理模块")
class Testdome1(object):
def test_dome_1(self,login_fixture):
'''用例一的用例描述: 我是第一个用例,我只有一个步骤'''
print("第一个测试用例")
jieko_dome_1()
def test_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") # 禅道用例连接地址
class Testdome3(object):
def test_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 __*__
import allure
def jieko_dome_1():
'''用例描述: 用例一的接口'''
print("这个是第一个用例对应的接口")
def jieko_dome_2():
'''用例描述: 用例二的接口'''
print("这个是第二个用例对应的接口")
@allure.feature("资源管理模块")
class jieko_dome_3(object):
'''这个是一个模块的测试'''
@allure.step("操作步骤: 新增资源个人信息")
def jieko_dome_3_1(self):
'''用例描述: 用例三的新增内容接口'''
print("这个是第三个用例对应的接口一")
@allure.step("操作步骤: 查询资源在线信息")
def jieko_dome_3_2(self):
'''用例描述: 用例三的查询内容接口'''
print("这个是第三个用例对应的接口二")
@allure.step("操作步骤: 修改资源身份信息")
def jieko_dome_3_3(self):
'''用例描述: 用例三的编辑内容接口'''
print("这个是第三个用例对应的接口三")
@allure.step("操作步骤: 删除资源全部信息")
def jieko_dome_3_4(self):
'''用例描述: 用例三的删除内容接口'''
print("这个是第三个用例对应的接口四")
三、执行测试用例
命令行模式执行用例
1、pytest --alluredir ./reopore/allure_row_1
执行结果:
会在工程中生成一个 /reopore/allure_row_1的文件,如图:
2、dome>allure serve reopore/allure_row_1
执行命令后将收集的数据加载到allure报告中,执行结果:
会自动使用默认浏览器打开报告
报告样式展示如下:
以上就是allure的各种装饰器加载后展示的报告的样式了。
感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。