いくつかの古いレガシーコードをリファクタリングしている間、私は可能な限り単一責任の原則を適用しようとしたので、1つの目的だけを持つ多くのクラスに行き着きました。それは問題ありませんが、これらの新しいクラスの単体テストを作成しようとすると問題が発生します。一部のクラスは、テストの設定が難しいため、テストが非常に困難です。単一のテストケースを作成するには、4〜5個のモック/スタブを作成する必要があります。すべてのコードをカバーしたい場合は、複数のテストケースを作成する必要があるため、お尻が痛くなります。
テストをセットアップするのが難しい(他の多くのクラスに依存しているため)コードの臭いはありますか?これをどのように解決しますか?