エンティティのセッターはすべてプライベートなので、エンティティを初期化するためにコンストラクタを使用します。保護されたセッターをモックする
ユニットテストを書く必要があり、複数のオブジェクトをインスタンス化する必要があります。 「問題」は、いくつかのランダムなデータでエンティティをインスタンス化するだけのコンストラクタを作成したくないということです。代わりに、私はこれを行うには、C#の簡単な方法を活用したいと思います:私は考えられ
var user = new User() { Name = "John", LastName = "Smith" };
1つのオプションは、セッターは、内部にし、InternalsVisibleTo
を設定することです。しかし、私は他のエンティティにこれらのプロパティを設定させたくありません。
私はMoq
でこれを行うことはできません。これを回避する他の方法はありますか?
+1 2番目のオプションでは、Userから派生したTestUserを作成し、保護されているセッターを呼び出すパブリックセッターを追加してください。 – zaitsman