我正在Visual Studio 11中使用Microsoft Fakes的Beta。如何验证被测系统是否已调用依赖项的方法?

最佳答案

由于Microsoft Fakes Beta中未包含验证功能,因此以下代码是有关是否调用依赖项方法的基本测试。您可以增强true测试以测试参数值或适当调用的其他条件。

测试:

[TestMethod]
public void TestMethod1()
{
    var secondDoItCalled = false;
    var secondStub = new Fakes.ShimSecond();
    secondStub.DoIt = () => { secondDoItCalled = true; };
    var first = new First(secondStub);
    first.DoIt();
    Assert.IsTrue(secondDoItCalled);
}

类(class):
public class First
{
    readonly Second _second;
    public First(Second second) { _second = second; }
    public void DoIt() {
        //_second.DoIt();
    }
}

public class Second {public void DoIt(){}}

取消注释上面的行以查看测试通过。

关于unit-testing - 如何验证是否调用了Microsoft伪造品(beta) stub /填充程序(如Rhino Mocks中的AssertWasCalled)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10390422/

10-12 05:51