次の問題があります。テストする必要のあるプライベートクラスを含むクラスがあるとします。不必要なコメントと回答を断ち切るには、はい、それは非公開のままでなければならず、はい、それはテストされなければなりません。
たとえば、次のようになります。
public class PublicClass
{
private class InternalClass
{
void Method() { }
}
}
テストを簡単かつ便利にするために、次のクラスを作成したいと思います。
public class InternalClassAccess
{
private object instance;
public InternalClassAccess()
{
// Use reflections to instantiate InternalClass
// and store it in instance field
}
public void Method()
{
// Use reflections to call Method() on
// stored instance
}
}
そのようなクラスを手動で書くことはできますが、それを自動的に行う方法があるのではないかと思います。VS2012のプロフェッショナルバージョンを持っています。