WCF 服务测试作为一个高效的.NET程序语言。其混合了函数语言和物件导向程序编制语言,并且***的适用于编程、算法、技术和探索性开发,因此可以在使用的过程当中感受到趣味性和吸引力。
其中的大多数附加测试主题是通过 WCF 强大的灵活性来实现的。例如,WCF 不但允许系统使用传输级别(例如,使用 HTTPS)的安全性,也允许使用较低级别的安全性。尽管 WCF 服务可以使用 HTTP,但 WCF 也允许系统使用多种其他机制(包括 TCP 和命名管道)进行通信。
正如我在上面介绍的,WCF 服务可以在 IIS 中承载,但 WCF 服务测试也可以通过其他方式承载(包括通过 Windows 服务和自承载托管的应用程序)。
WCF 服务可以支持多个端点,每个端点都有一个不同的地址、绑定和约定。WCF 支持请求答复式消息传送和双工式消息传送模式。所有这些 WCF 方案以及许多其他方案在进行全面测试时都有一些值得关注的暗示。#t#
本专栏中介绍的基本 WCF 服务测试方案只代表全面 WCF 测试的一部分。由于我的虚拟 WCF 加密哈希服务非常简单,因此整个逻辑都包含在单个的 GetCryptoHash 方法中。在一些实际的方案中,您可能需要编写封装业务逻辑的代码和单独的封装服务功能的代码。此方法允许您分别测试业务逻辑和服务,从而简化您的测试工作。
使用 Visual Studio Team System 创建 WCF 服务时,您可以利用内置的单元测试支持(如果您使用的是测试驱动的开发原理)。您也可以使用 Visual Studio 2008 随附的 WcfTestClient.exe 测试客户端实用程序来执行 WCF 服务的手动测试。
WCF 服务测试以实现我在本专栏中提供的自动测试类型(请参见《MSDN® 杂志》我的同事 Juval Lowy 撰写的专栏,网址为 msdn.microsoft.com/magazine/cc163289)。除了纯粹的功能测试以外,您还可以使用 Visual Studio 中集成的负载测试工具来执行负载测试。