【发布时间】:2016-11-30 21:08:48
【问题描述】:
我想测试调用第三方 Web 服务的类。是否可以为此使用 FakeItEasy?
Wenn 我尝试从Reference.cs 伪造课程(自动生成),UnitTest 开始并且没有回来。
Reference.cs(自动生成)
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
public partial class ws_AccessoryClient : System.ServiceModel.ClientBase<AccessoryService.ws_Accessory>,
AccessoryService.ws_Accessory
{
public ws_AccessoryClient()
{
}
public ws_AccessoryClient(string endpointConfigurationName) :
base(endpointConfigurationName)
{
}
public AccessoryService.ResponseMessageOf_ListOf_SomeMethodInfo SomeMethod(
AccessoryService.RequestMessageOf_SomeMethod request)
{
return base.Channel.SomeMethod(request);
}
}
Test.cs
[Test]
public void DoBusinessLogicTryTest()
{
var accessoryProxy = A.Fake<ws_AccessoryClient>();
}
【问题讨论】:
-
一般来说,伪造类(而不是接口)可能很棘手,因为生成的伪造必须调用原始类的非虚拟行为。也许这就是这里发生的事情。考虑调试测试,然后“Break All”看看它卡在哪里。那么也许我们可以根据所学找到更好的答案。
标签: c# wcf fakeiteasy