對(duì)于WCF 服務(wù)測(cè)試方案
WCF 服務(wù)測(cè)試作為一個(gè)高效的.NET程序語(yǔ)言。其混合了函數(shù)語(yǔ)言和物件導(dǎo)向程序編制語(yǔ)言,并且***的適用于編程、算法、技術(shù)和探索性開(kāi)發(fā),因此可以在使用的過(guò)程當(dāng)中感受到趣味性和吸引力。
其中的大多數(shù)附加測(cè)試主題是通過(guò) WCF 強(qiáng)大的靈活性來(lái)實(shí)現(xiàn)的。例如,WCF 不但允許系統(tǒng)使用傳輸級(jí)別(例如,使用 HTTPS)的安全性,也允許使用較低級(jí)別的安全性。盡管 WCF 服務(wù)可以使用 HTTP,但 WCF 也允許系統(tǒng)使用多種其他機(jī)制(包括 TCP 和命名管道)進(jìn)行通信。
正如我在上面介紹的,WCF 服務(wù)可以在 IIS 中承載,但 WCF 服務(wù)測(cè)試也可以通過(guò)其他方式承載(包括通過(guò) Windows 服務(wù)和自承載托管的應(yīng)用程序)。
WCF 服務(wù)可以支持多個(gè)端點(diǎn),每個(gè)端點(diǎn)都有一個(gè)不同的地址、綁定和約定。WCF 支持請(qǐng)求答復(fù)式消息傳送和雙工式消息傳送模式。所有這些 WCF 方案以及許多其他方案在進(jìn)行全面測(cè)試時(shí)都有一些值得關(guān)注的暗示。#t#
本專欄中介紹的基本 WCF 服務(wù)測(cè)試方案只代表全面 WCF 測(cè)試的一部分。由于我的虛擬 WCF 加密哈希服務(wù)非常簡(jiǎn)單,因此整個(gè)邏輯都包含在單個(gè)的 GetCryptoHash 方法中。在一些實(shí)際的方案中,您可能需要編寫封裝業(yè)務(wù)邏輯的代碼和單獨(dú)的封裝服務(wù)功能的代碼。此方法允許您分別測(cè)試業(yè)務(wù)邏輯和服務(wù),從而簡(jiǎn)化您的測(cè)試工作。
使用 Visual Studio Team System 創(chuàng)建 WCF 服務(wù)時(shí),您可以利用內(nèi)置的單元測(cè)試支持(如果您使用的是測(cè)試驅(qū)動(dòng)的開(kāi)發(fā)原理)。您也可以使用 Visual Studio 2008 隨附的 WcfTestClient.exe 測(cè)試客戶端實(shí)用程序來(lái)執(zhí)行 WCF 服務(wù)的手動(dòng)測(cè)試。
WCF 服務(wù)測(cè)試以實(shí)現(xiàn)我在本專欄中提供的自動(dòng)測(cè)試類型(請(qǐng)參見(jiàn)《MSDN® 雜志》我的同事 Juval Lowy 撰寫的專欄,網(wǎng)址為 msdn.microsoft.com/magazine/cc163289)。除了純粹的功能測(cè)試以外,您還可以使用 Visual Studio 中集成的負(fù)載測(cè)試工具來(lái)執(zhí)行負(fù)載測(cè)試。