哪些文檔需要測試
國家有關計算機軟件產品開發文件編制指南中共有14種文件,可分為3大類。
- 開發文件:可行性研究報告、軟件需求說明書、數據要求說明書、概要設計說明書、詳細設計說明書、數據庫設計說明書、模塊開發卷宗。
- 用戶文件:用戶書冊、操作手冊,用戶文檔的作用:改善易安裝性;改善軟件的易學性與易用性;改善軟件的可靠性;降低技術支持成本。
- 管理文件:項目開發計划、測試計划、測試分析報告、開發進度月報、項目開發總結報告。
用戶文檔測試的方法
- 校隊測試
- 功能測試
- 其他輔助方式
文檔測試要點
- 文檔的讀者群
- 文檔的術語
- 文檔的正確性
- 文檔的完整性
- 文檔的一致性
- 文檔的易用性
- 樣例與示例
- 文檔的語言
- 印刷與包裝質量等等
文檔測試的過程
- 文檔測試主要是查看文檔並且進行相關的交流討論。
文檔測試與靜態測試的關系
- 靜態測試只針對代碼
- 文檔測試也用於設計文檔
- 靜態測試與單元測試一樣,是檢查代碼在功能上的正確性;針對代碼的文檔測試更注重代碼與設計的一致,而代碼在功能上的正確性則更多的由針對設計的文檔測試來保證
文檔測試與評審的區別
-
評審人的范圍比較廣,可以包括主管、項目經理、其他開發人員等
-
評審的時間相對較短
-
評審的隨意性較大,系統性不強,評審人從各自的角度提出意見
文檔質量較差時,評審人很難提出實質性的意見
總體設計的驗證點
- 檢查需求中規定的功能點如何實現
- 需求中列出的所有功能點都能實現
- 檢查需求中規定的性能指標如何保證
- 需求中列出的所有性能指標都能保證
- 檢查普遍性的功能點(強壯性、容錯性、安全性)如何實現
- 系統部分失效(斷線重連、斷線重啟)
- 異常的輸入數據
- 異常業務量(零負荷、超負荷)
- 非法入侵
- 檢查普遍性的性能指標(可靠性、穩定性)如何保證
- 業務處理能力
- 業務預期響應時間
- 最大支持用戶數
- 檢查模塊定義是否正確
- 模塊的功能描述明確
- 模塊與模塊的關系與現實關系一致
概要設計的驗證點
- 檢查功能點(包括接口)如何實現
- 界面的輸入項齊全
- 界面的輸入項的數據類型、輸入方式正確
- 界面的輸出項齊全
- 界面的輸出項的數據類型、輸出方式正確
- 接口的輸入參數齊全
- 接口的輸入參數的數據類型正確
- 接口的輸出參數齊全
- 接口的輸出參數和返回值的數據類型正確
- 接口的輸出參數和返回值能反映異常情況
- 本模塊與其他模塊的通訊與總體設計一致
- 算法和流程正確
- 檢查性能指標如何保證
- 算法和流程高效
- 檢查類定義是否正確
- 類的功能描述明確
- 類不可以再分為兩個類
- 類與類的關系與現實關系一致
- 沒有使用友類
- ......
詳細設計的驗證點
- 檢查類實現是否正確
- 輸入正常的數據並經過正常的處理能得到正常的結果
- 輸入異常的數據或處理過程中出現的異常能在輸出參數或返回值中反映,或拋出異常
- 檢查類實現是否容易理解
- 函數或方法用於正常處理的邏輯分支(循環和分支語句的個數)不會過多(最好5個以內,盡量不超過10個)
- 函數或方法用於正常處理的操作不會過多(最好8個以內,盡量不超過15個)
- 函數或方法將產生的代碼行不會過多(最好30行以內,盡量不超多60行)
- 代碼的驗證點
- 檢查設計中規定的類和方法是否正確定義
- 類齊全
- 方法齊全
- 輸入參數齊全
- 輸入參數的數據類型正確
- 輸出參數齊全
- 輸出參數和返回值的數據類型正確
- 檢查代碼中的算法和流程是否與設計一致
- 設計中的流程分支有對應的代碼分支
- 代碼中不存在多余的分支
- 設計中描述的步驟有對應的代碼
- 設計中描述的步驟有對應的注釋
- 檢查糾錯機制是否完善
- 函數或方法的開始處有檢查輸入參數的合法性
- 調用函數或方法前有檢查輸入參數的合法性
- 調用函數或方法后有檢查輸出參數和返回值的合法性
- 指針操作前有檢查指針是否為空
- 檢查異常處理機制是否完善
- 函數或方法可能拋出的所有異常都有處理
- 未知的異常也有處理
- 檢查數據初始化有否進行
- 局部變量有初始化
- 類屬性有初始化
- 全局變量有初始化
- 未知的異常也有處理
- 內存申請后有初始化
- 檢查代碼的可讀性、可修改性
- 文件名、類名、屬性名、方法名、變量名、常量名等等命名符合規范
- 代碼的縮進符合規范
- 代碼的注釋符合規范
- 類的聲明符合規范
- 各種特定的值被定義為常量
- 函數或方法的輸入參數和輸出參數沒有被作為工作變量使用
用戶文檔的驗證點
- 讀者對象——主要是文檔的內容是否能讓該級別的讀者理解
- 術語——主要是檢查術語是否適合讀者
- 內容和主題——檢查主題是否合適、是否丟失、格式是否規范等
- 圖標和屏幕抓圖——檢查圖表的准確度和精確度
- 樣例和示例——是否與軟件功能一致
- 拼寫和語法
- 文檔的關聯性——是否與其他相關文檔的內容一致,例如與廣告信息是否一致