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

2021-10-03 09:40:41 字數 3715 閱讀 5136

目錄

軟體測試方法分類

一、從是否關心內部結構來看

1.白盒測試:

2.黑盒測試:

3.灰盒測試:

二、從是否執行**看

1.靜態測試:

2.動態測試:

三、從開發過程級別看

1.單元測試:

2.整合測試:

3.系統測試:

4.驗收測試:

四、從執行過程是否需要人工干預來看

1.手工測試:

2.自動化測試:

五、從測試實施組織看

1.開發測試:

2.使用者測試:

3.第三方測試:

六、從測試所處的環境看

1.阿爾法測試:

2.貝塔測試:

擴充套件資料

又稱為結構測試或邏輯驅動測試,是一種按照程式內部邏輯結構和編碼結構,設計測試資料並完成測試的一種測試方法。**的測試

又稱為資料驅動測試,把測試物件當做看不見的黑盒,在完全不考慮程式內部結構和處理過程的情況下,測試者僅依據程式功能的需求規範考慮,確定測試用例和推斷測試結果的正確性,它是站在使用軟體或程式的角度,從輸入資料與輸出資料的對應關係出發進行的測試。

系統的測試

是一種綜合測試法,它將「黑盒」測試與「白盒」測試結合在一起,是基於程式執行時的外部表現又結合內部邏輯結構來設計用例,執行程式並採集路徑執行資訊和外部使用者介面結果的測試技術。

系統的測試但是用**的思想來思考

指不執行被測程式本身,僅通過分析或檢查源程式的語法、結構、過程、介面等來檢查程式的正確性。

只分析**

是指通過執行被測程式,檢查執行結果與預期結果的差異,並分析執行效率、正確性和健壯性等效能指標。

執行程式並分析**

又稱模組測試,是針對軟體設計的最小單位----程式模組或功能模組,進行正確性檢驗的測試工作。其目的在於檢驗程式各模組是否存在各種差錯,是否能正確地實現了其功能,滿足其效能和介面要求。乙個類的**測試

又叫組裝測試或聯合,是單元測試的多級擴充套件,是在單元測試的基礎上進行的一種有序測試。旨在檢驗軟體單元之間的介面關係,以期望通過測試發現各軟體單元介面之間存在的問題,最終把經過測試的單元組成符合設計要求的軟體。許多類的**測試

是為判斷系統是否符合要求而對整合的軟、硬體系統進行的測試活動、它是將已經整合好的軟體系統,作為基於整個計算機系統的乙個元素,與計算機硬體、外設、某些支援軟體、人員、資料等其他系統元素結合在一起,在實際執行環境下,對計算機系統進行一系列的組裝測試和確認測試。

在系統測試中,對於具體的測試型別有:

(1)功能測試

:對軟體需求規格說明書中的功能需求逐項進行的測試,以驗證功能是否滿足要求。

(2)效能測試:對軟體需求規格說明書的功能需求逐項進行的測試,以驗證功能是否滿足要求。

(3)介面測試:對軟體需求規格說明中的介面需求逐項進行的測試。

(4)人機互動介面測試:對所有人機互動介面提供的操作和顯示介面進行的測試,以檢驗是否滿足使用者的需求。

(5)強度測試:強制軟體執行在異常乃至發生故障的情況下(設計的極限狀態到超出極限),驗證軟體可以執行到何種程式的測試。

(6)餘量測試:對軟體是否達到規格說明中要求的餘量的測試。

(7)安全性測試:檢驗軟體中已存在的安全性、安全保密性措施是否有效的測試,

(8)可靠性測試

:在真實的或**的環境中,為做出軟體可靠性估計而對軟體進行的功能(其輸入覆蓋和環境覆蓋一般大於普通的功能測試)

(9)恢復性測試:對有恢復或重置功能的軟體的每一類導致恢復或重置的情況,逐一進行的測試。

(10)邊界測試:對軟體處在邊界或端點情況下執行狀態的測試。

(11)資料處理測試:對完成專門資料處理功能所進行的測試。

(12)安裝性測試:對安裝過程是否符合安裝規程的測試,以發現安裝過程中的錯誤。

(13)容量測試:檢驗軟體的能力最高能達到什麼程度的測試。

(14)互操作性測試:為驗證不同軟體之間的互操作能力而進行的測試。

(15)敏感性測試:為發現在有效輸入類中可能引起某種不穩定性或不正常處理的某些資料的組合而進行的測試。

(17)相容性測試:驗證軟體在規定條件下與若干個實體共同使用或實現資料格式轉換時能滿足有關要求能力的測試。

(18)中文本地化測試:驗證軟體在不降低原有能力的條件下,處理中文能力的測試。

在軟體產品完成了單元測試、整合測試和系統測試之後,產品發布之前所進行的軟體測試活動。它是技術測試的最後乙個階段,也稱為交付測試。驗收測試的目的是確保軟體準備就緒,並且可以讓終端使用者將其用於執行軟體的既定功能和任務。

(1)alefa測試 是內測版本,不面向普通使用者,內部交流版本,可能存在很多bug,不建議使用者安裝。 

(2)bata測試是公測版本,面向所有使用者,通過使用者將結果反饋給開發人員,然後開發人員有針對的改下

(3)gama測試是軟體正式發行的候選版,這個版本也就是乙個後選正式版,與正式版相差無幾。

就是測試人員按照事先為覆蓋被測軟體需求而編寫的測試用例,根據測試大綱中所描述的測試步驟和方法,手工地乙個乙個地輸 入執行,包括與被測軟體進行互動(如輸入測試資料、記錄測試結果等),然後觀察測試結果,看被測程式是否存在問題,或在執行過程中是否會有一場發生,屬於比較原始但是必須執行的乙個步驟。

實際上是將大量的重複性的測試工作交給計算機去完成,通常是使用自動化測試工具來模擬手動測試步驟,執行用某種程式語言編寫的過程(全自動測試就是指在自動測試過程中,不需要人工干預,由程式自動完成測試的全過程;半自動測試就是指在自動測試過程中,需要手動輸入測試用例或選擇測試路徑,再由自動測試程式按照人工指定的要求完成自動測試)

開發人員進行的測試

使用者方進行的測試

有別於開發人員或使用者進行的測試,由專業的第三方承擔的測試,目的是為了保證測試工作的客觀性

是由乙個使用者在開發環境下進行的測試,也可以是公司內部的使用者在模擬實際操作環境下進行的測試。公司內部人員(一般是除去測試人員)的內測

是使用者公司組織各方面的典型終端使用者在日常工作中實際使用貝塔版本,並要求使用者報告。完全交給使用者的公測

軟體測試的內容:

1 得到需求、功能設計、內部設計說書和其他必要的文件

2 得到預算和進度要求

3 確定與專案有關的人員和他們的責任、對報告的要求、所需的標準和過程 ( 例如發行過程、變更過程、等等 )

4 確定應用軟體的高風險範圍,建立優先順序、確定測試所涉及的範圍和限制

5 確定測試的步驟和方法 ── 部件、整合、功能、系統、負載、可用性等各種測試

6 確定對測試環境的要求 ( 硬體、軟體、通訊等 )

7 確定所需的測試用具 (testware) ,包括記錄 / 回放工具、覆蓋分析、測試跟蹤、問題 / 錯誤跟蹤、等等

8 確定對測試的輸入資料的要求

9 分配任務和任務負責人,以及所需的勞動力

10 設立大致的時間表、期限、和里程碑

11 確定輸入環境的類別、邊界值分析、錯誤類別

12 準備測試計畫檔案和對計畫進行必要的回顧

13 準備白盒測試案例

14 對測試案例進行必要的回顧 / 調查 / 計畫

15 準備測試環境和測試用具,得到必需的使用者手冊 / 參考檔案 / 結構指南 / 安裝指南,建立測試跟蹤過程,建立日誌和檔案、建立或得到測試輸入資料

16 得到並安裝軟體版本

17 進行測試

18 評估和報告結果

19 跟蹤問題 / 錯誤,並解決它

20 如果有必要,重新進行測試

21 在整個生命週期裡維護和修改測試計畫、測試案例、測試環境、和測試用具

軟體測試方法分類

1 按照不同的測試物件劃分,可分為黑盒 白盒以及灰盒測試。2 按照是否執行程式劃分,可分為靜態和動態測試。靜態測試一般是指文件測試,不執行 如 文件評審,走查。動態測試就是通過執行程式完成的測試。包括上述提到的黑 白 灰盒測試。3 按照不同的測試手段劃分,可分為手工測試和自動化測試。手工測試顧名思義...

軟體測試方法分類

軟體測試方法種類繁多,有白盒測試 黑盒測試 靜態測試 動態測試 整合測試等等,記憶起來容易混亂,傻傻分不清楚,如果把軟體測試方法進行分類,就會清晰很多。現在test先生把常用的軟體測試方法列出來,讓大家更容易區分記憶。1.從是否關心軟體內部結構和具體實現的角度劃分 按測試分類 白盒測試 黑盒測試 灰...

軟體測試方法分類

軟體測試方法種類繁多,有白盒測試 黑盒測試 靜態測試 動態測試 整合測試等等,記憶起來容易混亂,傻傻分不清楚,如果把軟體測試方法進行分類,就會清晰很多。現在小峰把常用的軟體測試方法列出來,讓大家更容易區分記憶。1.從是否關心軟體內部結構和具體實現的角度劃分 按測試分類 白盒測試 黑盒測試 灰盒測試 ...