軟體測試方法

2021-10-01 08:45:05 字數 2566 閱讀 6792

軟體測試按測試方法分:靜態測試、動態測試、白盒測試、黑盒測試、灰盒測試

1.靜態測試

測試不執行的部分,只是檢查和審查,比如,檢查車子的輪胎。

1.1靜態測試的方式:

互審、走查、會議

2.動態測試

通用意義上的測試,使用和執行軟體,比如,開車上路。

3.白盒測試

可以訪問程式**,通過檢查**協助測試,測試員通過檢查**判斷出或多或少可能出錯的數目,並據此定製測試。

3.1白盒測試的主要邏輯覆蓋:

語句覆蓋、條件覆蓋、條件組合覆蓋、分支覆蓋、路徑覆蓋

3.2白盒測試的優點:

①迫使測試人員去仔細思考軟體的實現,理解原理;

②可以檢測**中的每條分支和路徑;

③提示隱藏在**中的錯誤;

④對**的測試比較徹底。

3.3白盒測試的缺點:

①昂貴;

②無法檢測**中遺漏的路徑和資料敏感性錯誤;

③不能直接驗證需求的正確性。

3.4白盒測試的主要方法:

**檢測法、靜態結構分析法、靜態質量度量法、邏輯覆蓋法、基本路徑測試法

4.黑盒測試

即功能性測試,只需要知道軟體要做什麼,不需要知道軟體是怎麼執行的。只要進行一些輸入,就能得到某種輸出結果。

4.1黑盒測試可以發現的錯誤有:

①是否有不正確或遺漏的功能;

②在介面上,輸入是否正確的接受,能否輸出正確的結果;

③是否有資料結構錯誤或外部資訊(例如資料檔案)訪問錯誤;

④效能上是否能夠滿足要求。

⑤初始化和終止錯誤。

4.2黑盒測試用例主要使用的方法有:

等價類劃分法、邊界值法、判定表法、因果圖法、場景法、錯誤推斷法、正交實驗分析法、狀態圖法、流程分析法

4.3黑盒測試的優點:

①容易實施,不需要關注內部的實現;

②更貼近使用者的使用角度。

4.4黑盒測試的缺點:

①測試覆蓋率較低;

②針對黑盒的自動化測試,復用率較低,維護成本較高。

5.灰盒測試

介於黑、白盒測試之間的,關注輸出對於輸入的正確性,同時也關注內部表現。

6.靜態黑盒測試

檢查產品說明書,並在軟體編寫之前找出問題。

7.動態黑盒測試

不深入**細節測試軟體的方法,測試員輸入資料、接受輸出、檢驗結果。

7.1測試軟體有兩種基本方法:

通過性測試和失效性測試

7.2通過性測試:實際上是確認軟體至少能做什麼,而不會考驗其能力。軟體測試員並不需要想盡辦法讓軟體奔潰,僅僅運用最簡單、最直觀的測試用例。

7.3失效性測試:確信軟體在普通情況下能正確執行後,採用各種手段搞垮軟體來找出軟體缺陷,純粹是為了破壞軟體而設計和執行的測試用例。

8.靜態白盒測試

在不執行軟體的條件下有條理的仔細審查軟體設計、體系結構和**,從而找出軟體缺陷的過程,有時稱為結構化分析。

8.1正式審查

進行靜態白盒測試的過程。

8.2正式審查有4個基本要素:

確定問題、遵守規則、準備、編寫報告。

8.3正式審查的間接效果:

交流、質量、小組同志化、解決方案。

8.4同事審查:召集小組成員進行初次正式審查的最簡單方法

8.5走查:比同事審查更正規化的下一步

8.6檢驗:最正式的審查型別,具有高度組織化,要求每乙個參與者都接受訓練

8.7檢驗與同事審查和走查的不同在於表述**的表述者不是原來的程式設計師,這就迫使表述者學習和了解要表述的材料,從而有可能在檢驗會議上提出不同的看法和解釋

8.8編碼標準和規範:**雖然可以正常執行,但是不符合語言的語法和文法規則。

8.9堅持編碼標準和規範的3個重要原因:

可靠性、可讀/維護性、移植性。

8.10通用**審查清單:

資料引用錯誤、資料宣告錯誤、計算錯誤、控制流程錯誤、子程式引數錯誤、輸入/輸出錯誤、其他檢查。

9.動態白盒測試

利用檢視**功能(做什麼)和實現方式(怎麼做)得到的資訊來確定哪些需要測試、哪些不需要測試、如何開展測試,程式設計師可以檢視並使用**內部的結構,從而設計和執行測試。

9.1動態白盒測試包括:

①直接測試底層函式、過程、子程式和庫;

②以完整程式的方式從頂層測試軟體,但是根據對軟體執行的了解調整測試用例;

③從軟體獲得讀取變數和狀態資訊的訪問權,以便確定測試與預期結果是否相符,同時,強制軟體以正常測試難以實現的方式執行;

④估算執行測試用例時」命中「的**量和具體**,然後調整測試,去掉多餘的測試用例,補充遺漏的用例。

9.2動態白盒測試和除錯的區別

動態白盒測試:目標是尋找軟體缺陷;

除錯:目標是修復軟體缺陷。

軟體測試 軟體測試方法分類

目錄 軟體測試方法分類 一 從是否關心內部結構來看 1.白盒測試 2.黑盒測試 3.灰盒測試 二 從是否執行 看 1.靜態測試 2.動態測試 三 從開發過程級別看 1.單元測試 2.整合測試 3.系統測試 4.驗收測試 四 從執行過程是否需要人工干預來看 1.手工測試 2.自動化測試 五 從測試實施...

軟體測試之 軟體測試方法

1 介紹測試方法 2 區分黑盒測試 灰盒測試和白盒測試 邏輯覆蓋測試 3 區分靜態測試 控制流分析 資料流分析 資訊流分析 同行評審 和動態測試 動態測試工具 4 了解手工測試和自動化測試。在介紹以上軟體測試方法時,需要先了解軟體產品的概念,軟體研發過程中產生的所有文件和 都可以稱之為軟體產品,同時...

軟體測試方法

測試的本質,就是 想盡一切辦法尋找軟體的缺陷!測試是乙個貫穿於整個開發過程的連續過程,從某個意義上說,軟體開發的過程實際上就是測試過程,測試最基本的原理就是比較預期結果是否與實際執行結果相同,如果相同則測試成功,否則測試失敗。測試的工作模式 1 編寫和維護一套詳盡的單元測試用例 2 先構造單元測試和...