和所有級別的軟件測試一樣,單元測試要求有一個在適當的位置的支撐基礎設施。這個單元測試基礎設施必須提供必要的信息來設計單元測試和單元測試數據。它還必須提供一個所有單元測試的相關產物(測試、測試數據和測試結果)可以永久存儲的知識庫。這個基礎設施必須用作單元測試執行的測試裝置,同時它必須捕獲并且存儲測試結果o ANSI/IEEEsTD 1008—1987定義了單元測試并記錄了正式單元測試方法。
進行人工的單元測試是很費時間并且負擔很重。這就是為什么開發者回避它的原因。當然,如果進行了所有的努力,我們就可以開發出使我們更快更好地工作的快捷方法。這甚至對通過使用微軟Excel和微軟word記錄測試數據等來增強的單元測試也適用。我們也已經看到用來記錄和存儲單元測試的Lott】sNotes數據庫。問題是需要手工工作來更新這些數據庫,尤其是做單元級的回歸測試時。因此,這增加了測試數據的維護。
一個更有效的方法是使用專門為單元測試設計的工具。有幾種是可以通過商業渠道獲得的產品,另外幾種可以從網上免費得到。還有支持通用的編程環境如vi叫dB、c和Java的工具。這些可用工具中的多種工具提供源代碼,并提供測試覆蓋度量。
商業工具在功能性上是多式多樣的。有一些工具非常先進。例如,R}ti。tlal S0ftware的Qud衄-Architact可以分析Java代碼,并反向操作生成用來構造測試用例的Ratk)nal Ro跎圖表。這種產品也可以執行針對應用程序的測試并捕獲結果。另一方面,有一些工具就它們提供的功能來說是不復雜的,但是仍然很有用。在網上可以免費獲得的Ju血是一個非常好的單元測試工具,但是它將設計、構建、執行以及分析測試的擔子壓在了開發者的肩上。一旦用Jullit安裝了初始的測試框架,它就會支持單元級別的回歸測試。這兩種產品之間的不同之處不是在于它們做了什么,而是實現它們所需要付出的努力的多少。原則是你得到了你為之付出的。
文章來源于領測軟件測試網 http://www.kjueaiud.com/