allure的内容以及用法
allure簡介
Allure是一款輕量級并且非常靈活的開源測試報(bào)告框架。 它支持絕大多數(shù)測試框架, 例如TestNG、Pytest、JUint等。它簡單易用,易于集成。
allure如何生成測試報(bào)告
運(yùn)行的時(shí)候加上
pytest.main ( ‘–alluredir’, ‘report/result’, ‘TestDemo01.py’])
會在當(dāng)前文件夾創(chuàng)建一個(gè)report文件夾,在report文件夾下創(chuàng)建result
生成html測試報(bào)告
因?yàn)樯傻臏y試報(bào)告是json的,不好看,所有用這個(gè)命令生成一個(gè)好看的HTML測試報(bào)告
運(yùn)行之后,就會生成一個(gè)HTML文件夾,點(diǎn)開index.html這個(gè)就是我們的測試報(bào)告啦
#####
這一節(jié)主要是記錄allure的內(nèi)容以及用法,怎么讓他生成一個(gè)完整的想要的報(bào)告。
allure生成的報(bào)告和其他五花八門的報(bào)告對比了一下,它的可讀性是最好、最直觀的。這不僅僅是我想要的效果,也是很多小伙伴想要的結(jié)果,畢竟這是給領(lǐng)導(dǎo)看,而且也算是自己老大成果的匯總。
關(guān)于怎么安裝的,請移步:https://www.cnblogs.com/Zhan-W/p/13132397.html
一、Allure相關(guān)的內(nèi)容:
| Allure用例描述 | ||
| 使用方法 | 參數(shù)值 | 參數(shù)說明 |
| @allure.epic() | epic描述 | 定義項(xiàng)目、當(dāng)有多個(gè)項(xiàng)目是使用。往下是feature |
| @allure.feature() | 模塊名稱 | 用例按照模塊區(qū)分,有多個(gè)模塊時(shí)給每個(gè)起名字 |
| @allure.story() | 用例名稱 | 一個(gè)用例的描述 |
| @allure.title(用例的標(biāo)題) | 用例標(biāo)題 | 一個(gè)用例標(biāo)題 |
| @allure.testcase() | 測試用例的連接地址 | 自動(dòng)化用例對應(yīng)的功能用例存放系統(tǒng)的地址 |
| @allure.issue() | 缺陷地址 | 對應(yīng)缺陷管理系統(tǒng)里邊的缺陷地址 |
| @allure.description() | 用例描述 | 對測試用例的詳細(xì)描述 |
| @allure.step() | 操作步驟 | 測試用例的操作步驟 |
| @allure.severity() | 用例等級 | blocker 、critical 、normal 、minor 、trivial |
| @allure.link() | 定義連接 | 用于定義一個(gè)需要在測試報(bào)告中展示的連接 |
| @allure.attachment() | 附件 | 添加測試報(bào)告附件 |
總共主要的就以上這些,常用的大概有一半吧 。
二、對于這其中常用的做一些使用實(shí)例:
代碼結(jié)構(gòu):
登錄是一個(gè)前置操作 ,拿出來后單獨(dú)存放,loging.py文件內(nèi)容:
# __*__coding:utf-8 __*__
import allure
@allure.step("操作步驟: 登錄")
def longin():
'''登錄操作'''
print("這個(gè)是登錄的接口")
conftest.py這個(gè)文件主要放一些公共的內(nèi)容
# __*__coding:utf-8 __*__
import pytest
from common_contion.loging import longin
@pytest.fixture(scope="session")
def login_fixture():
longin()
print("這個(gè)是前置操作:登錄")
case----test_case.py文件主要存放一些測試用例,內(nèi)容如下:
# __*__coding:utf-8 __*__
import pytest
import allure
from common_contion.dome_Interface import *
@allure.severity("blocker")
@allure.epic("項(xiàng)目名稱: 會所資源管理系統(tǒng)")
@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):
'''用例一的用例描述: 我是第一個(gè)用例,我只有一個(gè)步驟'''
print("第一個(gè)測試用例")
jieko_dome_1()
def test_dome_2(self,login_fixture):
'''用例二的用例描述: 我是第二個(gè)用例,我只有一個(gè)步驟'''
print("第二個(gè)測試用例")
jieko_dome_2()
@allure.severity("critical")
@allure.epic("項(xiàng)目名稱: 會所資源管理系統(tǒng)")
@allure.feature("資源管理模塊")
@allure.story("用例的標(biāo)題: 對會所資源進(jìn)行增、刪、改、查")
@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):
'''用例三的用例描述: 我是第三個(gè)用例,我是有多個(gè)步驟;'''
print("第三個(gè)測試用例")
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文件主要存放用例相關(guān)的接口內(nèi)容:
# __*__coding:utf-8 __*__
import allure
def jieko_dome_1():
'''用例描述: 用例一的接口'''
print("這個(gè)是第一個(gè)用例對應(yīng)的接口")
def jieko_dome_2():
'''用例描述: 用例二的接口'''
print("這個(gè)是第二個(gè)用例對應(yīng)的接口")
@allure.feature("資源管理模塊")
class jieko_dome_3(object):
'''這個(gè)是一個(gè)模塊的測試'''
@allure.step("操作步驟: 新增資源個(gè)人信息")
def jieko_dome_3_1(self):
'''用例描述: 用例三的新增內(nèi)容接口'''
print("這個(gè)是第三個(gè)用例對應(yīng)的接口一")
@allure.step("操作步驟: 查詢資源在線信息")
def jieko_dome_3_2(self):
'''用例描述: 用例三的查詢內(nèi)容接口'''
print("這個(gè)是第三個(gè)用例對應(yīng)的接口二")
@allure.step("操作步驟: 修改資源身份信息")
def jieko_dome_3_3(self):
'''用例描述: 用例三的編輯內(nèi)容接口'''
print("這個(gè)是第三個(gè)用例對應(yīng)的接口三")
@allure.step("操作步驟: 刪除資源全部信息")
def jieko_dome_3_4(self):
'''用例描述: 用例三的刪除內(nèi)容接口'''
print("這個(gè)是第三個(gè)用例對應(yīng)的接口四")
三、執(zhí)行測試用例:
命令行模式執(zhí)行用例
1、pytest --alluredir ./reopore/allure_row_1
執(zhí)行結(jié)果:
會在工程中生成一個(gè)/reopore/allure_row_1的文件,如圖:
2、dome>allure serve reopore/allure_row_1
執(zhí)行命令后將收集的數(shù)據(jù)加載到allure報(bào)告中,執(zhí)行結(jié)果:
會自動(dòng)使用默認(rèn)瀏覽器打開報(bào)告
報(bào)告樣式展示如下:
以上就是allure的各種裝飾器加載后展示的報(bào)告的樣式了。
總結(jié)
以上是生活随笔為你收集整理的allure的内容以及用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 约瑟夫问题
- 下一篇: 华硕俞元麟:ROG Z790 APEX