1. 程式人生 > 其它 >pytest---生成allure報告

pytest---生成allure報告

前言

  前面介紹了pytest生成html,但是這種報告和unittest中的HTMLTestRunner生成的報告沒什麼區別,本篇主要介紹一種新的生成測試報告的工具alluer。一種比html生成的報告強上100倍的報告~

allure

Alluer屬於一種開源的測試框架,可以基於多種語言進行使用,如java的junit,python的pytest。alluer生成的報告內容比較美觀,目前測試中常用的測試報告。Allure的環境是基於java環境的,前提條件需要將java的環境安裝完成。(下載JDK,配置環境變數。)

下載地址:https://github.com/allure-framework/allure2

下載完成進行解壓,並將allure路徑下的bin檔案進行放入到環境變數中。開啟終端檢視是否配置完成,,返回了版本號,說明已經配置完成了。

E:\>allure --version
2.13.1

由於我們是通過pytest進行生成alluer報告的,也需要進行安裝alluer在pytest中的第三方外掛allure-pytest

安裝外掛:pip install allure-pytest

先編寫幾個測試用例

import pytest

class TestCase:
    def test_01(self):
        print('---用例01---')
        
assert 1 def test_02(self): print('---用例02---') assert 1 def test_03(self): print('---用例03---') assert 0 if __name__ == '__main__': pytest.main(['-s'])

生成allure報告

用例編寫完成後,想要生成allure報告,需要輸入命令

--alluredir ./report/result
# 其中./report/result表示將生成的報告存放目錄

注意:這裡通過allure-pytest只是幫助我們將測試結果創建出來,但是無法生成HTML格式且生成的測試資料不會清空,而是以追加的形式。

執行完成上述命令,可以看到在當前目錄中生成了report檔案,檔案下展示的有一些json檔案,這些檔案屬於我們執行的測試結果內容。

想要生成對應的測試報告,需要再次在終端中輸入對應命令

方法一:

在終端上輸入以下命令

allure generate 生成測試結果資料 -o 生成報告的路徑 --clean
# --clean表示:如果已經存在生成報告路徑資料夾時,再次使用會提示新增--clean引數來重寫
# 如以下編寫用例命令
allure generate report/result/ -o report/html --clean

這裡在去開啟我們report中的html檔案就可以了。

如果不想去開啟html報告的話,也可以通過開啟終端執行命令進行自動開啟alluer報告

allure open  生成報告的路徑地址
E:\auto_test\test_01>allure generate report/result/ -o report/html --clean
Report successfully generated to report\html
# 這樣就會自動開啟allure報告資訊

方法二:

上面的方法還需要開啟html,安靜這裡提供另一種方法,在我們通過allure生成json資料後,開啟終端輸入allure serve report/result 我們的報告就會自動開啟,這裡allure會自己新建一個本地服務

E:\auto_test\test_01>allure serve report/result
Generating report to temp directory...
Report successfully generated to C:\Users\HAIYAN~1\AppData\Local\Temp\6715359970756727599\allure-report
Starting web server...
# 命令中allure serve 表示確定一個allure的服務,後面跟的是報告的路徑內容

這裡一份好看的allure報告就生成了。你以為allure就這樣就可以了嗎?不是的後續繼續更新allure更多精彩內容,點個關注,不迷路~