このクラスをテストする必要があります:
public abstract class GaBase
{
protected GoogleAnalyticsInfo GAInfo;
protected abstract void PopulateGAInfo();
public string GetGoogleAnalyticsTag()
{
//Return any info related to GAInfo
}
//Some other stuffs
}
メソッドを単体テストする必要がありますが、適切にテストするにGetGoogleAnalyticsTagはプロパティを設定する必要があります。GAInfo本番コードではPopulateGaInfo、このクラスから派生するときに my メソッドを使用してそれを行います。
GAInfoスタブを使用して設定するにはどうすればよいですか?
これが私のテスト方法です:
public void MyTest1()
{
var ga = new StubGaBase()
{
PopulateGAInfo01 = () =>
{
// How can I set GAInfo here?
}
};
// The method I need to test
var script = ga.GetGoogleAnalyticsTag();
// My asserts
}