軟體測試基礎總結

2021-07-05 14:17:18 字數 2358 閱讀 9759

第一階段結束了。總結一下自己掌握不太好的知識點

語句覆蓋、判定/

分支覆蓋、條件覆蓋、判定

-條件覆蓋

(1)語句覆蓋:是最起碼的測試要求,要求設計足夠多的測試用例,使得每條語句至少被執行一次。語句覆蓋對程式的邏輯覆蓋很少,語句覆蓋只關心判定表示式的值,而沒有分別測試判定表示式中每個條件去不同值時的情況。

優點:檢查所有的語句;結構簡單**的測試效果較好;容易實現自動測試;**覆蓋率高;如果是程式模組,則不不考慮程式塊中的源**。

缺點:不能檢查出條件語句錯誤、邏輯運算錯誤、迴圈語句錯誤。

(2)判定/

分支覆蓋:設計足夠的測試用例,使得每乙個分支至少通過一次,即每一條分支語句的「真」值和「假」值都至少執行一次。

優點:判定語句要比語句覆蓋能力強;執行分支覆蓋,也就執行力語句覆蓋。

缺點:不能檢查出條件語句錯誤、邏輯運算錯誤、迴圈次數錯誤、迴圈條件錯誤。

(3)條件覆蓋:不僅每乙個語句至少執行一次,使得判定中的每個條件獲得各種可能的結果。判定覆蓋只關心整個判定表示式的結果,條件覆蓋關心的則是每個條件各種取值的結果。

優點:能夠檢查所有的條件錯誤。

缺點:不能實現對每個分支的檢查;用例數增加。

(4)判定-

條件覆蓋:設計足夠多的測試用例,使得判定中每個條件的所有可能取值至少能夠獲取一次,同時每個判斷的所有可能的判定結果至少執行一次。

優點:既考慮了每乙個條件,有考慮了每乙個分支;發現錯誤的能力強於分支覆蓋和條件覆蓋。

缺點:不能全面覆蓋所有路徑;用例數量的增加。條件組合覆蓋和路徑覆蓋、各個覆蓋之間的關係

路徑覆蓋:根據程式的邏輯控制所產生的路徑進行測試用例設計的方法 。它是從乙個程式的入口開始,執行所經歷的各個語句的完整過程。完成路經測試的理想情況是做到路徑覆蓋。

滿足條件組合覆蓋,一定滿足語句覆蓋、判定覆蓋、條件覆蓋、判定條件覆蓋

等價類劃分、邊界值分析、決策表、因果圖、狀態轉換、用例測試/

場景法

黑盒用例測試主要方法:

(1)等價類劃分法:

就是把程式的輸入與劃分成若干部分,然後從每個部分中選取少數有代表性資料作為測試用例。

原則:1) 輸入條件為乙個取值範圍,可以劃分為乙個有效等價類和兩個無效等價類

2) 輸入條件規劃了輸入值的集合,或是規定可「必須如何」的,劃分乙個有效等價類和乙個無效等價類

3) 輸入條件為布林量,劃分乙個有效等價類和乙個無效等價類

4) 輸入資料為一組值(假設n個),而程式需要對每一輸入值分別處理,劃分為乙個有效等價類和n個無效等價類

5) 輸入資料必須遵循乙個有效,若干個無效

6) 已劃分等價類中,元素處理程式不同,可以劃分為更小的等價類

步驟:1) 劃分等價類

2) 劃等價類表

3) 編號

(2)邊界值法:選擇等價類邊界的值作為用例輸入

原則:1) 規定了值的範圍,選取邊界值——剛等於,剛大於,剛小於

2) 規定了值的個數:選取min、max

3) 輸入輸出為有序集合,選第乙個元素和最後乙個元素

(3)因果圖:(考慮了情況的各種組合級輸入條件之間的相互制約關係)

步驟:1) 找出原因(輸入條件)、結果(輸出結果)、識別符號

2) 找原因與原因、原因與結果的邏輯關係

3) 新增必要的約束條件

4) 轉換成判定表

5) 把判定表的每一列拿出來作為測試用例

(4)決策表

(5)因果圖

(6)狀態轉換

(7)用例測試/

場景法

灰盒測試的特性:

1) 灰盒測試同黑盒測試一樣,也是根據需求規格說明文件來進行測試用例的設計。但它要深入到系統內部的特殊點來進行功能測試和結構測

2) 灰盒測試通常在程式設計師做完白盒測試之後在功能測試人員進行大規模整合測試之前進行

3) 灰盒測試需要了解**工程的實現

4) 灰盒測試是通過類似白盒測試的方法進行的,是通過編寫**,呼叫函式或封裝好的介面進行,但無需關心程式模組內部的實現細節,依然可以把它當成乙個黑盒

5) 灰盒測試是由測試人員進行測試的。

灰盒測試的優點:

(1) 能夠進行基於需求的覆蓋測試和基於程式路徑覆蓋的測試

(2) 測試結果可以對應到程式內部路徑,便於bug的定位、分析和解決

(3) 能夠保證設計的黑盒測試用例的完整性,防止遺漏軟體的一些不常用的功能或功能組合

(4) 能夠避免需求或設計不詳細或不完整對測試造成的影響

灰盒測試的缺點:

(1) 投入時間比黑盒測試大概多20%~40%的時間

(2) 對測試人員的要求比黑盒測試高

(3) 灰盒測試要求測試人員清除系統內部由哪些模組構成,模組之間如何協作

(4) 不如白盒測試深入

(5) 不適用與簡單的系統

軟體測試基礎知識總結

1.軟體測試的生命週期 需求分析 測試計畫 測試設計 測試開發 測試執行 測試評估 2.軟體的生命週期 需求分析 計畫 設計 編碼 測試 執行維護 3.開發模型和測試模型 傳統的開發模型和敏捷的區別 十二宣言 個體與互動重於過程和工具 強調人與人之間的溝通 可用的軟體重於完備的文件 輕文件 對文件的...

軟體測試基礎知識總結

1 軟體測試階段有哪些任務 制定測試大綱 測試計畫 製作測試資料 測試方案 單元測試 程式測試,一般由開發人員進行 功能測試 效能測試 整合測試 子系統測試 系統測試 驗收測試 測試報告及向下階段提交系統執行 維護使用者手冊 2 自動化測試 概念 為了提高工作效率,節省人力和成本,把人為驅動的測試轉...

軟體測試基礎 軟體測試概要

1.歷史上由軟體bug引發的重大事故 因此,軟體質量是非常重要的,而軟體測試作為軟體質量保證重要的組成部分,在軟體研發中有著重要的地位,是不可或缺的一環。2.什麼是測試?ieee定義 iso iec ieee 29119 使用人工或自動的手段來執行或測量軟體系統的過程,以檢驗軟體系統是否滿足規定的要...