このクラスをテストする必要があります:
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
}