M
pytest規約に従ったテストコードが書ける
by mnbst
pytestの標準パターンを使ってテストを体系的に構成でき、プロジェクト全体で統一されたテストコードが書けます。 unittest.mock.patchとMagicMockを活用して外部依存をモックし、単体テストを隔離環境で実行できます。 @pytest.fixtureで共通セットアップを管理し、テスト間の重複コードを削減できます。 Streamlitのコンポーネント(components.v2)を効果的にテストでき、UIロジックの動作を自動検証できます。 streamlit.testing.v1.AppTestを使った統合テストで、ユーザーインタラクション全体をテストできます。 Streamlitアプリを開発するPythonエンジニア テスト駆動開発(TDD)を実践したい開発チーム モック・フィクスチャなどのテスト技法を体系的に学びたい人 サービスの品質保証にテスト自動化が必須な環境のエンジニア このスキルは、pytestを使用したテスト作成・実行時の規約を定めています。ファイル配置はtests/test_*.py、クラスはclass Test機能名:で構成し、docstringは日本語で簡潔に記載します。基本テスト構成は@pytest.fixtureでモック依存を管理し、正常系・異常系テストを実装します。Streamlitコンポーネントのテストでは、components.componentをpatchでモックし、importlib.reload()でモック適用後にモジュール再読み込みし、戻り値をdict形式で設定します。外部APIテストでは、unittest.mock.patchでAPI呼び出しをモック化し、戻り値やside_effect(例外)を制御します。各テストで新しいインスタンスを作成し、AssertExpectations(t)でモック期待値を検証します。
テストドキュメント