轉自http://blog.csdn.net/casularm/article/details/497235
參考http://www.doc88.com/p-50896629809.html
一個優秀的測試用例,應該包含以下信息:
1 ) 軟件或項目的名稱
2 ) 軟件或項目的版本(內部版本號)
3 ) 功能模塊名
4 ) 測試用例的簡單描述,即該用例執行的目的或方法
5 ) 測試用例的參考信息(便於跟蹤和參考)
6 ) 本測試用例與其他測試用例間的依賴關系
7 ) 本用例的前置條件,即執行本用例必須要滿足的條件,如對數據庫的訪問權限
8 ) 用例的編號( ID ),如可以是 軟件名稱簡寫 - 功能塊簡寫 -NO. 。
9 ) 步驟號、操作步驟描述、測試數據描述
10 )預期結果(這是最重要的)和實際結果(如果有 BUG 管理工具,這條可以省略)
11 )開發人員(必須有)和測試人員(可有可無)
12 )測試執行日期
例如以下這個模板:
項目 / 軟件 |
技術出口合同網絡申領系統 |
程序版本 |
1.0.25 |
|
|
|
功能模塊名 |
Login |
編制人 |
xxx |
|
|
|
用例編號 - |
TC-TEP_Login_1 |
編制時間 |
2010.10.12 |
|
|
|
相關的用例 |
無 |
|
|
|
|
|
功能特性 |
用戶身份驗證 |
|
|
|
|
|
測試目的 |
驗證是否輸入合法的信息,允許合法登陸,阻止非法登陸 |
|
|
|
|
|
預置條件 |
無 |
特殊規程說明 |
如數據庫訪問權限 |
|
|
|
參考信息 |
需求說明中關於 “ 登陸 ” 的說明 |
|
|
|
|
|
測試數據 |
用戶名 =yiyh 密碼 =1 |
|||||
操作步驟 |
操作描述 |
數 據 |
期望結果 |
實際結果 |
實際結果 |
測試狀態 |
1 |
輸入用戶名稱,按 “ 登陸 ” 按鈕。 |
用戶名 =yiyh ,密碼為空 |
顯示警告信息 “ 請輸入用戶名和密碼! ” |
|
|
|
2 |
輸入密碼,按 “ 登陸 ” 按鈕。 |
用戶名為空,密碼 =1 |
顯示警告信息 “ 請輸入用戶名和密碼! ” |
|
|
|
------------>>> |
||||||
測試人員 |
|
開發人員 |
|
|
項目負責人 |
|
=====需求測試用例=======
客戶需求列表-需求說明書 | 開發人員-系統說明書-功能列表 | 測試人員--功能點測試列表 |
1注冊功能 | 1用戶可以自動注冊 | (對比發現問題) |
===== 接口測試用例===
接口 A 的函數原型 |
|
||
輸入 / 動作 |
期望的輸出 / 相應 |
實際情況 |
|
典型值 … |
|
|
|
邊界值 … |
|
|
|
異常值 … |
|
|
|
接口 B 的函數原型 |
|
||
輸入 / 動作 |
期望的輸出 / 相應 |
實際情況 |
|
典型值 … |
|
|
|
邊界值 … |
|
|
|
異常值 … |
|
|
|
… |
|
|
==== 路徑測試的檢查用例====
檢查項 |
結論 |
數據類型問題 |
|
變量值問題 |
|
邏輯判斷問題 |
|
循環問題 |
|
內存問題 |
|
文件 I/O 問題 |
|
錯誤處理問題 |
|
… |
|
=====功能測試用例=====
功能 A 描述 |
|
||
用例目的 |
|
||
前提條件 |
|
||
輸入 / 動作 |
期望的輸出 / 相應 |
實際情況 |
|
示例:典型值 … |
|
|
|
示例:邊界值 … |
|
|
|
示例:異常值 … |
|
|
|
功能 B 描述 |
|
||
用例目的 |
|
||
前提條件 |
|
||
輸入 / 動作 |
期望的輸出 / 相應 |
實際情況 |
|
…… |
======健壯性測試- 容錯能力 / 恢復能力測試用例=====
異常輸入 / 動作 |
容錯能力 / 恢復能力 |
造成的危害、損失 |
示例:錯誤的數據類型 … |
|
|
示例:定義域外的值 … |
|
|
示例:錯誤的操作順序 … |
|
|
示例:異常中斷通信 … |
|
|
示例:異常關閉某個功能 … |
|
|
示例:負荷超出了極限 … |
|
|
|
|
|
|
|
|
======性能測試用例=======
性能 A 描述 |
|
||
用例目的 |
|
||
前提條件 |
|
||
輸入數據 |
期望的性能(平均值) |
實際性能(平均值) |
|
|
|
|
|
|
|
|
|
|
|
|
|
性能 B 描述 |
|
||
用例目的 |
|
||
前提條件 |
|
||
輸入數據 |
期望的性能(平均值) |
實際性能(平均值) |
|
…… |
|||
|
=====界面測試用例-界面檢查表=======
檢查項 |
測試人員的類別及其評價 |
窗口切換、移動、改變大小時正常嗎? |
|
各種界面元素的文字正確嗎?(如標題、提示等) |
|
各種界面元素的狀態正確嗎?(如有效、無效、選中等狀態) |
|
各種界面元素支持鍵盤操作嗎? |
|
各種界面元素支持鼠標操作嗎? |
|
對話框中的缺省焦點正確嗎? |
|
數據項能正確回顯嗎? |
|
對於常用的功能,用戶能否不必閱讀手冊就能使用? |
|
執行有風險的操作時,有“確認”、“放棄”等提示嗎? |
|
操作順序合理嗎? |
|
有聯機幫助嗎? |
|
各種界面元素的布局合理嗎?美觀嗎? |
|
各種界面元素的顏色協調嗎? |
|
各種界面元素的形狀美觀嗎? |
|
字體美觀嗎? |
|
圖標直觀嗎? |
|
|
|
… |
|
======信息安全測試用例=========
假想目標 A |
|
||
前提條件 |
|
||
非法入侵手段 |
是否實現目標 |
代價-利益分析 |
|
…… |
|
|
|
|
|
|
|
假想目標 B |
|
||
前提條件 |
|
||
非法入侵手段 |
是否實現目標 |
代價-利益分析 |
|
…… |
|
|
|
|
|
|
======壓力測試用例===========
極限名稱 A |
例如“最大並發用戶數量” |
||
前提條件 |
|
||
輸入 / 動作 |
輸出 / 響應 |
是否能正常運行 |
|
例如 10 個用戶並發操作 |
|
|
|
例如 20 個用戶並發操作 |
|
|
|
… |
|
|
|
極限名稱 B |
|
||
前提條件 |
|
||
輸入 / 動作 |
輸出 / 響應 |
是否能正常運行 |
|
|
|
|
|
… |
|
|
======可靠性測試用例========
任務 A 描述 |
|
連續運行時間 |
|
故障發生的時刻 |
故障描述 |
|
|
|
|
…… |
|
統計分析 |
|
任務 A 無故障運行的平均時間間隔 |
( CPU 小時) |
任務 A 無故障運行的最小時間間隔 |
( CPU 小時) |
任務 A 無故障運行的最大時間間隔 |
( CPU 小時) |
任務 B 描述 |
|
連續運行時間 |
|
故障發生的時刻 |
故障描述 |
|
|
|
|
…… |
|
統計分析 |
|
任務 B 無故障運行的平均時間間隔 |
( CPU 小時) |
任務 B 無故障運行的最小時間間隔 |
( CPU 小時) |
任務 B 無故障運行的最大時間間隔 |
( CPU 小時) |
====== 安裝 / 反安裝測試用例============
配置說明 |
|
|
安裝選項 |
描述是否正常 |
使用難易程度 |
全部 |
|
|
部分 |
|
|
升級 |
|
|
其它 |
|
|
反安裝選項 |
描述是否正常 |
使用難易程度 |
|
|
|
|
|
|