1 測試對象和目的
數組
軟件單元測試的目的是檢查每一個軟件單元可否正確地實現設計說明中的功能、性能、接口和其餘設計約束等要求,發現單元內可能存在的各類差錯。其對象時可獨立編譯或者彙編的程序模塊。
數據結構
2 測試的組織和管理ide
軟件單元測試技術是依據軟件詳細設計文檔。
函數
3 技術要求性能
對軟件設計文檔規定的軟件單元的功能、性能、接口等應逐項進行測試。單元測試
每一個軟件特性應至少被一個正常測試用例和一個被承認的異常測試用例覆蓋。測試
測試用例的輸入應至少包括有效等價類值、無效等價類值和邊界數據值spa
在對軟件單元進行動態測試以前,通常應對軟件單元的源代碼進行靜態測試。設計
語句覆蓋率100%對象
分支覆蓋率要達到100%
對輸出數據及其格式進行測試
4 測試內容
(1)當靜態測試時,所測試的內容與選擇的測試方法有關。如,採用代碼審查方法,一般要對寄存器的使用(僅限定在機器指令和彙編語言時考慮),程序格式、入口和出口的鏈接、程序語言的使用、存儲器的使用等內容進行檢查;採用靜態分析方法,一般對軟件單元的控制流、數據流、接口、表達式等內容進行分析。
(2)動態測試:一般對軟件單元的功能、性能、接口、局部數據結構、獨立路徑、出錯處理、邊界條件和內存使用狀況進行測試。一般對軟件單元接口的測試優先於其餘內容的測試。
(3)接口測試
調用被測單元的實際參數與該單元的形式參數的個數、屬性、量綱、順序是否一致
被測單元調用子模塊時,傳遞給子模塊的實際參數與子模塊的形式參數的個數、數據、量綱、順序是否一致。
是否修改了只做爲輸入值得形式參數。
調用內部函數的參數個數、屬性、量綱、順序是否正確。
被測單元在使用全局變量時是否與全局變量的定義一致
輸入、輸出文件屬性的正確性
open/close語句的正確性
緩衝區容量與記錄長度是否匹配
文件是否先打開而後使用
文件結束條件的判斷和處理的正確性
對輸入、輸出錯誤是否進行了檢查並作了處理及處理的正確性
(4)局部數據結構
不正確或不一致的數據類型說明錯誤的文件變量,如變量名拼寫錯縮寫錯等使用還沒有賦值或還沒有初始化的變量差錯的初始值或差錯的缺省值不一致的數據類型下溢、上溢或是地址差錯全局數據對軟件單元的影響
(5)獨立路徑獨立路徑是指在程序中至少引進一個新的處理語句集合或一個新條件的任一路徑。在程序的控制圖中,一條獨立路徑是至少包含有一條在其餘獨立路徑中從未有過的邊的路徑。
(6)邊界條件應測試軟件單元在邊界處可否正常工做,如,測試處理數組的第一個和最後一個元素;測試循環執行到最後一次;測試取最大值或最小值;測試數據流。控制流中恰好等於、大於或小於肯定的比較值等。
(7)差錯處理測試軟件單元在運行過程當中發生過程當中發生差錯是,其出錯處理措施是否有效差錯的描述難以理解在對差錯進行處理以前,差錯條件已經引發系統的干預所提供的差錯描述信息不足以肯定形成差錯的位置或緣由顯示的出錯提示與實際差錯不符;對差錯條件的處理不正確意外的處理不當聯機條件處理(交互處理)不正確
(8)功能
(9)性能:對軟件單元的性能(如精度、時間、容量等)進行測試
(10)內存使用
5 測試環境
6 測試方法 先靜態後動態
7 測試過程 測試策劃-測試設計-測試執行-測試總結
8 文檔
軟件單元測試計劃
軟件單元測試說明
軟件單元測試報告
軟件單元測試記錄
軟件單元測試問題報告