首先,「完全的測試是不可能的」,意思是我們不可能設計出全部的測試用例來對軟體進行測試。正確的方法是,在所有可能的測試用例中,找出有可能發現最多錯誤的那個用例子集。
這就需要用的一定的測試策略,包括黑盒測試和白盒測試兩大類。對於白盒測試,主要就是從覆蓋程式的邏輯結構出發設計測試用例。而黑盒測試包括等價類劃分、邊界值分析、因果圖分析、錯誤猜測幾類。
組合的測試策略:
白盒測試的邏輯覆蓋的幾個層次:
最後的多重條件覆蓋是覆蓋情況最好的,對於前面幾個的覆蓋情況也是包含的關係。其用例設計方法為:
將每個判斷的所有結果都至少執行一次。
將每個判斷的所有可能的條件結果的組合都至少執行一次。
將所有的程式入口都至少呼叫一次。
等價類:如果等價類的某個測試用例發現了某個錯誤,該等價類的其他測試用例也應該能發現這個錯誤。相反,如果該測試用例沒能發現錯誤,那麼其他測試用例也不能發現錯誤。當然了,這是乙個理想狀態下的劃分。
有效等價類與無效等價類:有效等價類代表對程式的有效輸入,而無效等價類代表的是其他任何可能的輸入條件。
根據給定的輸入規則和外部條件確定等價類:
如果輸入條件規定了乙個取值範圍,確定乙個處於範圍的有效等價類,兩個在範圍兩端之外的無效等價類。
如果輸入條件規定了取值的個數,確定乙個符合個數規定的有效等價類,乙個沒有輸入的、乙個超出個數的無效等價類。
如果輸入條件規定了乙個輸入值的集合,確定集合裡每乙個元素乙個有效等價類,乙個集合之外的值的無效等價類。
如果存在輸入條件規定了「必須是」的情況,確定乙個滿足的有效等價類,乙個不滿足的無效等價類。
然後就可以根據確定好等價類進行用例設計了。原則是:
所謂邊界條件,是指輸入和輸出的可能情況中那些恰好處於邊界、超過邊界、在邊界以下的情況。這與等價類是有點相似,不同點在於:
分析指南:
如果輸入條件規定了乙個取值範圍,應當設計兩個邊界值、兩個邊界值之外取值的共 4 個用例。
如果輸入條件規定了輸入值的數量,應當設計乙個 0 個、乙個最小數量、乙個最大數量、乙個超出範圍共 4 個用例。
對每個輸出條件應用指南 1 。
對每個輸出條件應用指南 2 。
如果輸出或輸出是乙個有序序列,需要特別注意覆蓋序列的第乙個和最後乙個元素。
前面的等價類劃分和邊界值分析只關注與軟體的輸入和輸出規格,對於更多的規格說明,可以對應整理出因果圖進行進一步的邏輯分析,從乙個不同的視角,或者說更系統性的視角來設計測試用例。其分析設計過程如下:
將規格說明分解為可執行的片段。
確定規格說明中的因果關係。
分析規格說明的語義內容,將其轉換為連線因果關係的布林圖。
給圖加上輸出輸出的約束關係說明等註解符號。
跟蹤因果圖的狀態變化,轉換為乙個判定表。
將判定表中的列轉換為測試用例。
錯誤猜測不算是什麼測試用例設計的策略。其實就是設計人員的潛意識和直覺。不過也是有其特點:
廖傑良 - 2019-05-19
軟體測試 測試用例筆記
軟體測試基礎 滿足需求為目的,保證軟體質量,滿足使用者需求 軟體測試流程 需求分析,計畫制定 用例編寫 結果報告 測試生命週期 計畫 設計 開發 執行 評估 黑盒測試 功能 相容性 灰盒測試 效能 易用性 白盒測試 安全 ui元素 測試用例是一組在測試時輸入輸出的標準,軟體需求的具體對照 測試用例的...
軟體測試筆記(測試用例)
測試用例第二天 1.等價類 適用物件 1 輸入框 2 頁面上多個輸入框不存在邏輯關係 測試輸入框考慮要點 1 長度 2 型別 3 組成規則 是否含有特殊字元,數字,漢字等 4 是否為空 5 是否重複 是否區分大小寫,前中後空格等 2.邊界值 一般配合等價類使用 上點 離點 內點 3.判定表 適用物件...
軟體測試 用例
三 什麼是測試用例的有效性 四 測試用例的粒度和評價 軟體測試 用例 本節重點 1.測試用例的基本要素 2.測試用例的設計方法 3.測試用例的有效性 4.測試用例的粒度和評價 測試用例就是向被測試系統發起的一組集合,包含測試資料,測試環境,操作步驟,預期結果 要素 測試前期 測試版本 功能模組 重要...