Pytest 系列(26)- 清空 allure 歷史報告記錄


如果你還想從頭學起Pytest,可以看看這個系列的文章哦!

https://www.cnblogs.com/poloyy/category/1690628.html

 

背景

  • pytest 運行 測試用例生成 allure 報告時,當測試用例名稱修改后重新運行,會保留歷史運行記錄
  • 又或者分開運行兩個測試用例文件,但是 allure 報告生成目錄是同一個,那么 allure 報告會同時顯示兩個文件的測試用例運行情況
  • 咱們來看看這種情況

 

目錄結構

下面兩個栗子都是這個目錄結構

 

指定測試用例文件名稱的栗子

test_1.py 的代碼

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
__title__  = 
__Time__   = 2020/10/28 11:03
__Author__ = 小菠蘿測試筆記
__Blog__   = https://www.cnblogs.com/poloyy/
"""


def test_1():
    print("test_1 文件的測試用例1")


def test_2():
    print("test_1 文件的測試用例2")

 

運行命令

進入該目錄下,cmd 運行

pytest test_1.py --alluredir=./allure

 

allure 報告

只有兩條用例

 

修改后的 test_1.py 的代碼

def test_11():
    print("test_1 文件的測試用例1")


def test_22():
    print("test_1 文件的測試用例2")

 

再次運行命令,查看 allure 報告

四條用例,包含了歷史的兩條,這不是我們希望看到的

 

分開運行測試用例文件的栗子

test_2.py 的代碼

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
__title__  = 
__Time__   = 2020/10/28 11:03
__Author__ = 小菠蘿測試筆記
__Blog__   = https://www.cnblogs.com/poloyy/
"""


def test_1():
    print("test_1 文件的測試用例1")


def test_2():
    print("test_1 文件的測試用例2")

 

分開運行 test_1 和 test_2 兩個測試用例文件

# 先運行第一個
pytest test_1.py --alluredir=./allure

# 再運行第二個,此時應該希望 allure 報告只有 test_2.py 的測試用例
pytest test_2.py --alluredir=./allure

 

查看 allure 報告

出現了 test_1.py 的測試用例,這不是想要的結果

 

--clean-alluredir 參數

前言

  • pytest 提供了 --clean-alluredir 參數可以清空 allure 報告生成的目錄
  • 可以看看 pytest 的說明文檔

 

pytest -h

 

將上面的栗子重新運行

# 先運行第一個
pytest test_1.py --alluredir=./allure

# 再運行第二個,此時應該希望 allure 報告只有 test_2.py 的測試用例
pytest test_2.py --alluredir=./allure --clean-alluredir

 

運行結果

 


免責聲明!

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



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