#Pytest
8 件の記事
読了 7分
Pythonテスト #6 テスト設計 — 良いテストとカバレッジの読み方
テスト設計の基本である AAA パターンと動作中心のテストから、テストダブルの用語整理、フレーキーテストへの対応、pytest-cov のカバレッジの数字を正しく読む方法まで扱います。
読了 6分
Pythonテスト #5 外部世界のテスト — ファイル、HTTP、DB、Webフレームワーク
mock ですべて塞いだテストは本物の動作を保証しません。ファイルは tmp_path で本物を書き、HTTP は respx で境界だけ塞ぎ、DB はトランザクションロールバックで戻す、外部世界のテスト戦略を整理します。
読了 6分
Pythonテスト #4 mockとmonkeypatch: 制御できないものを制御する
時間、乱数、外部 API のように実行のたびに結果が変わる依存性を monkeypatch と unittest.mock で固定する方法を扱います。patch のパスの罠と過剰 mock の境界線まで整理します。
読了 5分
Pythonテスト #3 parametrizeとマーカー: ケースを増やして選んで回す
pytest の @pytest.mark.parametrize で入力だけが違うテストをケース表 1 つにまとめ、skip・skipif・xfail とカスタムマーカー、-m・-k オプションで必要なテストだけを選んで実行する方法を整理します。
読了 6分
Pythonテスト #2 フィクスチャ: 準備と後片付けを注入してもらう
@pytest.fixture でテストの準備コードを注入してもらう方法を扱います。yield によるティアダウン、scope のトレードオフ、conftest.py での共有、tmp_path のような組み込みフィクスチャまで整理します。
読了 7分
Pythonテスト #1 pytest入門: assertひとつで十分な理由
pytest をインストールして assert ひとつで最初のテストを書く方法から、unittest との違い、失敗出力の読み方、テストディスカバリーのルールまで整理します。