[英]WCF Client Mocking with RhinoMock
我正在嘗試用Rhino Mock模擬WCF客戶代理,但運氣不佳。
var ServiceMock = MockRepository.GeneratePartialMock<ServiceClient>();
ServiceMock.Expect(p => p.Publish("")).IgnoreArguments().Return("Worked");
這就是我一直在嘗試模擬代理的方式。 這是通過構造函數正常設置的。
這似乎不是在嘲笑ServiceClient有人可以幫助嗎?
應該能夠做這樣的事情:
[TestClass]
public class MyTestClass{
private IService _service;
[TestInitialize]
public void Setup(){
_service = MockRepository.GenerateStrictMock<IService, ICommunicationObject>();
}
[TestMethod]
public void TestWhatsGoingOn(){
_service.Expect(.....).Return(.....);
//This will test the close is called too (hence the ICommunicationObject above)
((ICommunicationObject)_service).Expect(r => r.Close());
}
[TestCleanup]
public void CleanItUp{
_service.VerifyAllExpectations();
}
這意味着您可以測試close方法是否也被調用(如預期的那樣)
我認為您需要生成嚴格的模擬,而不是部分...
當然,當然,如果您想斷言.Abort()調用是在異常處理等過程中進行的,則可以執行以下操作:
((ICommunicationObject)_service).Expect(r => r.Abort());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.