測試的目的是檢查程式的行為是否符合設計規格,程式的行為就是某種輸入時會產生什麼輸出,因此,乙個典型的測試用例完成以下工作:設定輸入資料、執行程式、驗證輸出是否符合預期。
函式的輸入資料一般包括:
a、引數;
b、成員變數,只考慮函式需要讀取的成員變數;
c、全域性變數,只考慮函式需要讀取的全域性變數;
d、內部輸入,主要是呼叫子函式產生的輸入、區域性靜態變數、中斷產生的輸入。
以上四項,當涉及到複雜資料型別時,只考慮函式需要讀取的域,例如,乙個結構物件,有十個域,而函式只讀取其中乙個域,則不必考慮其他九個域。
e、其他資料,如函式需要讀取檔案或資料庫中的資料,則要先在檔案或資料庫中設定好這些資料。
顯然,所有可能輸入都進行測試,既不可能也無意義,我們應該用一定的規則選擇有代表性的資料作為輸入。輸入可分為三大類:正常輸入,邊界輸入,非法輸入,每大類還可再分為若干小類,劃分小類的依據是:
同一小類中每個資料都具有等價的測試效果,也就是說,小類中取任取乙個資料作為輸入,如果測試通過,可以肯定同小類的其他輸入也可以測試通過,這就是平常說的「等價類法」。
正常輸入
例如字串的trim函式,功能是將字串前後的空格去除,那麼正常的輸入可以有四類:
前面有空格;
後面有空格;
前後均有空格;
前後均無空格。
邊界輸入
上例中空字串可以看作是邊界輸入。
再如乙個表示年齡的引數,它的有效範圍是0-100,那麼邊界輸入有兩個:0和100。
非法輸入
垃圾資料或使**不能完成正常功能的資料,如乙個檔案操作的函式,非正常輸入有這麼幾類:
檔案不存在;
目錄不存在;
檔案正在被其他程式開啟;
許可權錯誤。
預期輸出
乙個完整的測試用例應該有預期輸出,預期輸出就是程式執行後的預期結果,通常表現在對某些資料的修改,即預期輸出要自動判斷程式所改寫的資料的結果值是否符合預期。程式可能修改的資料報括:
a、返回值;
b、輸出引數;
c、成員變數,只考慮函式所改寫的成員變數;
d、全域性變數,只考慮函式所改寫的全域性變數;
e、內部輸出,即需判斷的中間結果,如函式計算好乙個報文後傳送出去,要判斷這個報文是否正確。
以上五項,當涉及到複雜資料型別時,只考慮函式所改寫的域,例如,乙個結構物件,有十個域,而函式只改寫了其中乙個域,則不必考慮其他九個域。
e、其他資料,如函式改寫檔案或資料庫中的資料,也是一種輸出,不過通常難於自動判斷是否符合預期,可用人工檢視來代替。
功能測試用例
專案編號 s 專案名 分類 模 整合測試用例 version 專案承擔部門 撰寫人 簽名 完成日期 本文件使用部門 主管領導 專案組 客戶 市場 維護人員 使用者評審負責人 簽名 評審日期 修訂文件歷史記錄 日期版本說明作者 目錄1.簡介 1 1.1目的 1 1.2範圍 1 1.3定義,首字母縮寫及...
通用測試用例
目錄1 基本資料型別的邊界值 2 2 asc 字符集對應的常見故障模型 23 文字框測試用例 4 4 字型測試 單位格屬性 5 5 登入視窗測試 5 6 開啟檔案 6 7 檔案 7 8 列印測試 8 9 控制項 8 10 選單 8 11 特殊屬性 9 12 文件測試 9 13 安裝測試 10 14 ...
測試用例說明
測試用例設計 百科名片 測試用例就是乙個文件,描述輸入 動作 或者時間和乙個期望的結果,其目的是確定應用程式的某個特性是否正常的工作。目錄定義 測試用例的基本格式 1.用例編號 2.測試標題 3.重要級別 4.測試輸入 5.操作步驟 6.預期結果 軟體測試用例 重用同型別專案的測試用例 利用已有的軟...