测试运行 - WCF测试简介2010-12-24 MSDN James McCaffrey目录待测试系统测试工具其他注意事项无论 您是刚刚接触 Windows® Communication Foundation (WCF) 还是有过一点 使用经验,都可以通过一些测试技巧和原理轻松掌握 WCF。有多种方法可以弄清 WCF 究竟是什么,我更倾向于将 WCF 服务看作是 Web 服务的重要扩展。与 Web 服务一样,WCF 服务允许您使用面向服务的体系结构来创建分布式系统。但是, WCF 服务提供了更大的灵活性(如选择传输协议)和附加功能(如事务和安全性 )。WCF 绝非仅仅是 Web 服务的扩展,但如果您刚刚接触 WCF,开始时这样看 待 WCF 服务也未尝不可。图 1 是一个简单但极具代表性的 WCF 方案。 在这里,Internet Explorer® 充当客户端程序并访问 ASP.NET Web 应用程 序,用来接受来自用户的一些文本并计算其加密哈希值。ASP.NET Web 应用程序 在后台调用 WCF 服务来实际执行哈希运算。在这个特定方案中,WCF 服务由 IIS 承载并被 ASP.NET Web 应用程序使用,但正如我要在稍后进行说明的那样 ,除 IIS 之外,WCF 服务还可以通过多种方式承载,并且实际上可被任何类型 的应用程序或其他服务使用。

图 1 典型的 WCF 应用程序方案最基本的 WCF 服务测试类型包括验证服 务操作功能的正确性。一种方法是通过应用程序 UI 手动测试 WCF 服务。尽管 手动测试是必要的,但使用此方法来测试 WCF 服务的基本功能会是一项耗时、 易错、低效而且乏味的工作。更好的方法是编写测试自动化软件,一个 类似于图 2 所示的运行程序。此屏幕快照显示了我编写的一个控制台应用程序 测试工具,它可以将输入文本直接提供给后端 WCF 服务,然后从该服务获取响 应消息并确定测试用例结果(通过或失败)。图 3 中的图表是一个简化视图, 它总结了图 1 和图 2 中所示程序之间的关系。在许多情况下,WCF 服务都从后 端数据库检索信息或者从 Web 服务或 WCF 服务检索信息,但我并未在图 3 中 包括这些情况。

图 2 测试 WCF 服务(

图 3 简化关系接下来,我将对后端 WCF 服务进行说明以便您对所测试 的内容有准确的了解,然后还将简要讨论图 1 中所示的使用 WCF 服务的 ASP.NET Web 应用程序,此外还会对测试工具做详细的介绍。最后我会讲一讲其 他一些 WCF 测试方案。