単体テストに moq を使用することから始めました。私がやりたいのはこれだけです: クラス A の "Execute" メソッドをテストします。メソッドは IA タイプのオブジェクトを受け入れ、それに単純なプロパティを設定します。
[TestFixture]
public class A
{
public void Execute(object s)
{
if (s is IA)
{
(s as IA).ASimpleStringProperty = "MocktestValue";
}
}
}
public interface IA
{
string ASimpleStringProperty { get; set; }
}
単体テストを次のように書きました。
しかし、これは以下の私のテスト方法ではうまくいきません: 私が間違っているアイデアはありますか?
[Test]
public void TestMethod1()
{
var person = new Mock<IA>();
var a = new A();
a.Execute(person.Object);
person.VerifySet(ASimpleStringProperty = "MockytestValue", "FailedTest");
}
(ASimpleStringProperty が "Mocktestvalue" であるかどうかを確認したいのですが、何らかの理由でできませんでした。また、デバッグを行うと、ASimpleStringProperty が null であることがわかります!