测试WCF Web服务?
我想为WCF服务创建一个测试类。 我相信“嘲笑”是正确的用语吗?
我不确定我认为必须这样做的方式是正确的方法。 我得到了一个WCF服务的URL,例如:
http:://somesite.com/wcf/RealService.svc
和:
http:://somesite.com/wcf/RealService.svc?wsdl
因此,我没有将RealService.svc
实际添加到我的项目作为Service Reference
只是向我的项目Service1
添加了一个新的空WCF Service
。
然后我想使用wsdl.exe
(或者可能是svcutil.exe?)工具从WSDL url生成一个接口: http:://somesite.com/wcf/RealService.svc?wsdl
。
然后我打开Service1.cs
文件而不是让它inheritance自IService1.cs
我让它从生成的interface
inheritance。
然后,我只需要调用我的Service1
类,而不是在我的应用程序中调用实际服务。 这是一个嘲弄网络服务的工作方式..?
还需要弄清楚如何使用svcutil工具实际生成一个interface
(我读过我不能将Wsdl.exe用于WCF服务?)。 所以任何提示都非常受欢迎!
要触摸的许多区域都会尝试指向正确的方向:
希望这可以帮助。
您可以使用svcutil.exe生成代理(来自Visula Studio: 添加服务引用… )。 这将生成您的客户端代理和服务接口 。
例如,您的服务http :: //somesite.com/wcf/RealService.svc?wsdl我们将获得:
您可以创建一个实现服务接口(IRealService)的模拟类。
并且在您的应用程序中,而不是在要调用服务时实例化具体服务客户端(RealServiceClient),您可以使用Factory或IOC容器。
通过这种方式,您可以确定应用程序(或模块/组件)使用的实例:运行时的实际服务,测试时的模拟。
上述就是C#学习教程:测试WCF Web服务?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/986661.html