pytest -allure標記用例級別severity


用例等級

allure對用例的等級划分成五個等級

  • blocker  阻塞缺陷(功能未實現,無法下一步)
  • critical  嚴重缺陷(功能點缺失)
  • normal   一般缺陷(邊界情況,格式錯誤)
  • minor  次要缺陷(界面錯誤與ui需求不符)
  • trivial   輕微缺陷(必須項無提示,或者提示不規范)

比如我的用例有以下4條


那么對應的用例的等級應該是

  • 修改個人信息-sex參數為空 這個屬於邊界值情況的測試,應該是normal級別
  • 修改個人信息-sex參數傳F和M兩種類型,成功(枚舉類型) 這個是針對接口的功能點詳細測試 critical級別
  • 修改個人信息-修改不是本人的用戶信息,無權限操作 這個是針對接口的功能點詳細測試 critical級別
  • 修改個人信息-修改自己的個人信息,修改成功 這是用例是測試主流程 blocker級別

pytest用例

根據測試用例的重要性划分測試用例等級,如果沒指定等級,默認為normal級別

import pytest
import allure
 @allure.severity裝飾器按嚴重性級別來標記case    執行指定測試用例 --allure-severities blocker
BLOCKER = 'blocker'  阻塞缺陷 CRITICAL = 'critical' 嚴重缺陷 NORMAL = 'normal'   一般缺陷 MINOR = 'minor'   次要缺陷 TRIVIAL = 'trivial'  輕微缺陷  '''
@allure.severity("normal") def test_case_1(): '''修改個人信息-sex參數為空''' print("test case 11111111") @allure.severity("critical") def test_case_2(): '''修改個人信息-sex參數傳F和M兩種類型,成功(枚舉類型)''' print("test case 222222222") @allure.severity("critical") def test_case_3(): '''修改個人信息-修改不是本人的用戶信息,無權限操作''' print("test case 333333333") @allure.severity("blocker") def test_case_4(): '''修改個人信息-修改自己的個人信息,修改成功''' print("test case 4444444") def test_case_5(): '''沒標記severity的用例默認為normal''' print("test case 5555555555")

cd到用例的目錄,執行用例,查看報告

pytest --alluredir ./report/allure
allure serve ./report/allure
查看報告詳情

統計缺陷

如果執行用例的過程中有測試用例不通過的情況,也可以統計缺陷的嚴重等級

# 修改上面2個用例,故意讓用例失敗
@allure.severity("blocker")
def test_case_4():
    '''修改個人信息-修改自己的個人信息,修改成功'''
    print("test case 4444444")
    assert 1==2


def test_case_5():
    '''沒標記severity的用例默認為normal'''
    print("test case 5555555555")
    assert 1==2

重新執行用例,查看報告-圖表

allure命令行參數allure-severities

pytest -h可以查看到allure相關的幾個命令行參數
--allure-severities=SEVERITIES_SET
Comma-separated list of severity names. Tests only
with these severities will be run. Possible values
are: blocker, critical, normal, minor, trivial.
如果有很多測試用例,現在只想做個快速的回歸測試,只測試用例級別為blocker和critical級別的測試用例

pytest --alluredir ./report/allure --allure-severities blocker,critical

也可以這樣寫

pytest --alluredir=./report/allure --allure-severities=blocker,critical

如果只執行blocker級別的用例

pytest --alluredir=./report/allure --allure-severities=blocker

 


免責聲明!

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



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