テストしたい Python コードにモックを挿入する 2 つの異なるアプローチを見ることができます。
依存性注入:
連携するクラスがテスト対象オブジェクトのコンストラクターに渡されるようにし、モック オブジェクト (および必要に応じて Java などのファクトリ) を渡します。
モンキーパッチ:
モック オブジェクト ファクトリを使用して、テスト対象のモジュール内の共同作業クラスをスタブ化します (共同作業クラスを構築すると、実際にモック オブジェクトが作成されます)。コンストラクターを介してそれらを注入したり、ファクトリーを作成したりする必要はありません。
これらのアプローチはどちらも、python モッキング ライブラリ ( moxやmockなど) でサポートされているようです。Pythonでどのアプローチを使用する必要がありますか、これらのいずれかが賢明ですか、それともより良いアプローチがありますか?