私は簡単な電話帳のクラス(このクラスは、テスト用に別の電話帳を挿入するため、このクラスが抽出されています)には〜10個のエントリがあり、私は疑問に思っています。電話帳のエントリごとにテストを作成するのか、キーに基づいていくつかの電話番号が正しく取得されるようにテストするだけですか?
インターフェイスは非常に簡単です。
public interface IPhoneBook { string Lookup(string key); }
存在するはずのエントリを取得するテストをテストします。
存在してはならないエントリの取得をテストするテストがあります。
それは、データ構造があなたが記述するのと同じくらい単純ならば、十分であるはずです。
あなた自身に尋ねてください。上記のテストをすべてのエントリでテストすると、どのような価値がありますか?もしそうでなければ、しないでください。
テスト専用のクラスを注入する場合は、注入されたクラスのテストに気を付ける必要はありません。スタブされたメソッドを呼び出すクラスをテストし、注入されたクラスがうまく動作すると仮定します。注入されたクラスについてわからない場合は、個別にテストする必要があります。実稼働には進まないのですか?
Moq - サイト
var mockPhonebook = new Mock(); mockPhonebook.Setup(x => x.Lookup(It.IsAny())) .Returns("SamplePhonebookEntry");