6
我應該使用NUnit和最小起訂量 返回真實的。我米的私有方法,所以我有如下:如何聲明/驗證Moq保護方法?
[TestFixture]
public class CustomerTestFixture
{
var customerMock=new Mock<ICustomer>()
customerMock.Protected().Setup<bool>("CanTestPrivateMethod").Returns(true);
// How do I assert it now since I cannot do
customerMock.Verify //Verify does not exists.
}
無法找到谷歌什麼,告訴你如何對它進行測試。你可以看到我可以爲它做一個設置,但不能斷言。
我是否缺少明顯的?非常感謝。
感謝您的回覆。 我想我的模擬了object.CanTestPrivateMethod返回特定的值。 所以,如果我硬編碼「返回true」在我的私人方法。 我仍然可以斷言嗎? 在我看來,我不應該測試私人方法,但我的同事堅持這一個。 所以我只是想弄清楚如何使用起訂量來做到這一點。 – user9969 2010-02-01 19:04:39
你錯過了我的觀點。不要模擬被測物體。只嘲笑它的依賴關係。創建一個實際的實例,設置條件以便私有方法返回一個特定的值,然後使用訪問器檢查該方法是否實際返回該值。唯一需要mock的是如果實例有一些依賴關係,你可以在你的私有方法中使用它們。 – tvanfosson 2010-02-01 19:32:13
感謝您的時間和答覆。我現在明白了。 – user9969 2010-02-01 21:48:13