Pytest - 概述&入門

粥雨發表於2023-05-15

Pytest - 概述&入門


簡介

  • Pytest是一款強大的python自動化測試工具,可以勝任各種型別或者級別的軟體測試工作;

  • pytest提供了豐富的功能,包括assert重寫,第三方外掛,以及其他測試工具無法比擬的fixture模型;

  • pytest是一個軟體測試框架,是一款命令列工具,可以自動找到測試用例執行,並且回報測試結果;

  • 豐富的基礎庫,可以大幅度提高使用者編寫測試用例的效率。具備擴充套件性,使用者可以自己編寫外掛,或者安裝第三方提供的外掛;

  • 以很容易地與其他工具整合到一起使用。比如持續整合,web自動化測試等。


安裝

pip install pytest

image


用例約束

用Pytest寫用例時候,一定要按照下面的規則去寫,否則不符合規則的測試用例是不會執行的。

  • 用例收集規則:
    • test_ 開頭的測試檔案,例如 test_login.py
    • Test 開頭的測試類,例如 class Test_login:
    • test_ 開頭的測試函式,例如 def test_login():

  • 執行用例規則:
    • 執行指定目錄下用例: pytest 目錄/目錄
    • 執行指定python檔案: pytest 目錄/檔名.py
    • 執行指定類或者函式: pytest 目錄/檔名.py::類名::函式名

快速入門

test_login.py

# -*- coding:utf-8 -*-
import pytest

# 測試類名稱以Test開頭
class Test_Login:

    # 函式命名使用test開頭或結尾
    def test_a(self):
        abc = 0+1
        assert abc  # 斷言成功

    # 在單測類中,可以包含一個或多個test開頭的函式
    def test_b(self):
        abc = 1-1
        assert abc  # 斷言失敗

if __name__ == "__main__":
    pytest.main(['-s', "test_login.py"])

相關文章