Allure+pytest 生成測試報告


簡介:

  python 主流自動化測試報告插件有三個:HTMLTestRunner、BeautifulReport 和 Allure。HTMLTestRunner是一個比較古老的報告模板,界面也不是很好看。BeautifulReport  界面很簡潔,看起來也很直觀,是一款比較不錯的報告插件。如果你想提升一下你的level,讓你的自動化測試報告變得高大上,那么請選擇 Allure 。

  Allure 是一款輕量級的開源自動化測試報告生成框架。它支持絕大部分測試框架,比如 TestNG、Junit 、pytest、unittest 等。本文主要介紹 pytest 框架結合 Allure 生成 格式統一、美觀的 測試報告。

 

 

1.Allure 下載安裝

Allure 下載最新版本:https://github.com/allure-framework/allure2/releases

下載完成之后,解壓到 pytest 目錄中。然后設置環境變量,簡單一點就是進入 \allure-2.13.0\bin 目錄執行 allure.bat 。cmd 輸入 allure 查看環境變量是否設置成功。

 

 

2. allure-pytest

下載 allure-pytest 插件,用來生成 Allure 測試報告所需要的數據。

pip3 install allure-pytest

 

案例分析:

1.編寫一段使用 pytest 框架的測試代碼:

#!/usr/bin/env python
# coding=utf-8
import pytest
import allure
import os

@pytest.fixture(scope='function')
def login():
    print("登錄")
    yield
    print("登錄完成")

@allure.feature('加入購物車')
def test_1(login):
    '''將蘋果加入購物車'''
    print("測試用例1")

@allure.feature('加入購物車')
def test_2():
    '''將橘子加入購物車'''
    print("測試用例2")

if __name__ =="__main__":
    # 執行pytest單元測試,生成 Allure 報告需要的數據存在 /temp 目錄
    pytest.main(['--alluredir', './temp'])
    # 執行命令 allure generate ./temp -o ./report --clean ,生成測試報告
    os.system('allure generate ./temp -o ./report --clean'

@allure 裝飾器中的一些功能點:

@allure.feature :用於定義被測試的功能,被測產品的需求點
@allure.story : 用於定義被測功能的用戶場景,即子功能點
@allure.step :用於將一個測試用例,分成幾個步驟在報告中輸出
allure.attach : 用於向測試報告中輸入一些附加的信息,通常是一些測試數據信息

 

2.執行后生成 Allure 報告:

 

打開 index.html ,測試報告如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM