Python
Pythonテスト #6 テスト設計 — 良いテストとカバレッジの読み方
テスト設計の基本である AAA パターンと動作中心のテストから、テストダブルの用語整理、フレーキーテストへの対応、pytest-cov のカバレッジの数字を正しく読む方法まで扱います。
Pythonテスト #5 外部世界のテスト — ファイル、HTTP、DB、Webフレームワーク
mock ですべて塞いだテストは本物の動作を保証しません。ファイルは tmp_path で本物を書き、HTTP は respx で境界だけ塞ぎ、DB はトランザクションロールバックで戻す、外部世界のテスト戦略を整理します。
Pythonテスト #4 mockとmonkeypatch: 制御できないものを制御する
時間、乱数、外部 API のように実行のたびに結果が変わる依存性を monkeypatch と unittest.mock で固定する方法を扱います。patch のパスの罠と過剰 mock の境界線まで整理します。
Pythonテスト #3 parametrizeとマーカー: ケースを増やして選んで回す
pytest の @pytest.mark.parametrize で入力だけが違うテストをケース表 1 つにまとめ、skip・skipif・xfail とカスタムマーカー、-m・-k オプションで必要なテストだけを選んで実行する方法を整理します。
Pythonテスト #2 フィクスチャ: 準備と後片付けを注入してもらう
@pytest.fixture でテストの準備コードを注入してもらう方法を扱います。yield によるティアダウン、scope のトレードオフ、conftest.py での共有、tmp_path のような組み込みフィクスチャまで整理します。
Pythonテスト #1 pytest入門: assertひとつで十分な理由
pytest をインストールして assert ひとつで最初のテストを書く方法から、unittest との違い、失敗出力の読み方、テストディスカバリーのルールまで整理します。
モダンPython実践 #5 非同期とバックグラウンドタスク
async ルートのポジション、BackgroundTasks でレスポンス後の処理、外部キュー (Celery、ARQ) が必要になる境界、そして同期ライブラリと安全に混ぜる方法を整理します。
モダンPython実践 #4 認証 — OAuth2 パスワードフロー + JWT
パスワードハッシング (argon2/bcrypt)、OAuth2 パスワードフロー、JWT の発行 / 検証、そして current_user 依存性できれいに解く認証パターンを整理します。
モダンPython実践 #3 DB 連携 — SQLAlchemy 2.x + Alembic
SQLAlchemy 2.x の新スタイル — Mapped/mapped_column、async セッション、FastAPI の依存性注入との結合、Alembic のマイグレーションまで整理します。
モダンPython実践 #2 ルーティング、Pydantic モデル、依存性注入
APIRouter でルート分離、Pydantic v2 スキーマで入出力を定義、Depends で共通ロジックをきれいに解くパターンまで整理します。
モダンPython実践 #1 FastAPI のはじめ方とセットアップ
なぜ FastAPI なのか、uv で最初のプロジェクトをセットアップ、Hello FastAPI、OpenAPI/Swagger UI の自動生成までを一カ所に整理します。