使用 pytest 進行進階測試
中級
開發人員
學生
Visual Studio Code
使用 parametrization、fixtures 和 monkeypatch fixture 來撰寫具有可重用設定與隔離狀態的 pytest 測試。
學習目標
在本課程模組結束時,您將能夠:
- 用來
@pytest.mark.parametrize執行一個測試函式,裡面有多個輸入值。 - 建立可重複使用的測試夾具,以便在測試間共享設定和清理作業。
- 說明 pytest fixture 範圍、使用
yield型拆除,以及透過conftest.py共用 fixture。 - 在測試期間,使用內建
monkeypatch的夾具安全地替換函數、數值、環境變數與路徑。
必要條件
- 撰寫 Python 腳本的能力
- 熟悉命令行工具和執行腳本
- 基本熟悉撰寫與執行 pytest 測試,包括測試發現與斷言
- Python 3.10 或更新版本,符合 pytest 9.x 的最低支援版本,且 pytest 安裝於虛擬環境中。 關於Windows設定,請參考在 Windows 設定你的Python開發環境。 關於Python封裝和 pytest 設定,請參考 Python 的 安裝 Python modules 以及 pytest 的 入門指南。