ドメインエンティティでいくつかの動作をモックしてテストする必要があります。ドメイン エンティティには、保護されたフィールドとして Id があります。私のドメイン エンティティの動作の一部は、その ID を使用して、エンティティが新しいか汚れているかを判断します。では、保護されたフィールドにアクセスできるように、ドメイン エンティティから継承するクラスを動的に作成するにはどうすればよいでしょうか。エンティティ フレームワークが作成するプロキシに似ています。または、ドメインクラスで関数をモックしてテストするための他のより良い方法がある場合。以下のコード例を参照してください。
public class Customer{
public Id {get; protected set;}
public bool SomeMethod(){
//This method check if the Id == 0 then it's a new instance and if not then
//Old instance
}
}
public void Test_SomeMethod(){
var customer = Customer.GetInstance();
//Test the Somemethod. By mocking that it's not a new instance
}