【发布时间】:2011-09-13 23:06:09
【问题描述】:
我有许多 WCF 服务,它们被 ASP.NET MVC 应用程序中的某个功能调用。
- MVC 应用调用 Contract-Service(WCF 服务)
- Contract-Service 在其处理调用 Contract-Buy-Service (WCF 服务)
- Contract-Buy-Service 调用 SAM-Utility-Service(WCF 服务)
当我从 Contract-Buy-Service 运行我的 TDD 测试用例时,它工作得非常好。因为电话从 Contract-Buy-Service 转到 SAM-Utility-Service。但是当电话从 合同服务 => 合同购买服务 => SAM-实用程序服务 我总是收到配置中找不到 SAM-Utility-Service 端点的错误。
在contract-buy-service 和contract-service 中都有SAM-Utility-Service 的服务参考。我已检查该服务是否已托管并且已启动并正在运行。当我尝试通过浏览器查看时,我可以获得 WSDL。
谁能告诉我为什么服务调用没有经过多个层,或者我在这里做错了什么?
谢谢!
【问题讨论】:
-
一般来说,单元测试根本不应该调用任何服务。利用服务契约(它们是接口)来模拟服务这一事实。
-
是的,这就是我实现单元测试的方式。我在 Visual Studio 2010 中使用测试项目类型,它具有对合同的 DLL 引用而不是服务引用。我正在使用服务工厂开发 WCF 服务。谢谢
-
那么你应该更新你的问题。当您运行 TDD 测试时,您根本没有调用服务。
标签: wcf endpoint wcf-endpoint