軟體測試技術

2021-06-01 00:49:13 字數 1953 閱讀 8773

一、黑盒測試

這種方法是把測試物件看做乙個黑盒子,測試人員完全不考慮程式內部的邏輯結構和內部特性,只依據程式的需求規格說明書,檢查程式的功能是否符合它的功能說明。 黑盒測試又叫做功能測試或資料驅動測試。常用設計測試用例方法有:等價類劃分、邊界值分析法、錯誤推測法、因果圖法、正交法等。

二、白盒測試

此方法把測試物件看做乙個透明的盒子,它允許測試人員利用程式內部的邏輯結構及有關資訊,設計或選擇測試用例,對程式所有邏輯路徑進行測試。通過在不同點檢查程式的狀態,確定實際的狀態是否與預期的狀態一致。因此白盒測試又稱為結構測試或邏輯驅動測試。常用設計測試用例方法有:邏輯覆蓋:即語句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋、路徑覆蓋、基本路徑測試等。

三、測試用例設計

乙個好的測試用例就是有乙個合理的概率來找到bug,不要冗餘,要有針對性,乙個測試只針對一件事情。測試用例開發中主要使用的技術有等價類劃分,邊界值的分析,error guessing testing。

等價類劃分是根據輸入輸出條件,以及自身的一些特性分成兩個或更多個子集,來減少所需要測試的用例個數,並且能用很少的測試用例來覆蓋很多的情況,減少測試用例的冗餘度。在等價類劃分中,最基本的劃分是乙個為合法的類,乙個為不合法的類。

邊界值的分析是利用了乙個規律,即程式最容易發生錯誤的地方就是在邊界值的附近,它取決於變數的型別,以及變數的取值範圍。一般對於有n個變數時,會有6n+1個測試用例,取值分別是min-1, min, min+1, normal, max-1, max,max+1的組合。邊界值的分析的缺點,是對邏輯變數和布林型變數不起作用,還有可能會忽略掉某些輸入的組合。

error guessing testing完全靠的是經驗,所設計的測試用例就是常說的猜測。感覺到軟體在某個地方可能出錯,就去設計相應的測試用例,這主要是靠實際工作中所積累的經驗和知識。其優點是速度快,只要想得到,就能很快設計出測試用例。缺點就是沒有系統性,無法知道覆蓋率會有多少,很可能會遺漏一些測試領域。

四、冒煙測試與隨機測試

1、冒煙測試:

冒煙測試(smoke testing), 冒煙測試的名稱可以理解為該種測試耗時短,僅用一袋煙功夫足夠了。也有人認為是形象地模擬新電路板功基本功能檢查。任何新電路板焊好後,先通電檢查,如果存在設計缺陷,電路板可能會短路,板子冒煙了。冒煙測試的物件是每乙個新編譯的需要正式測試的軟體版本,目的是確認軟體基本功能正常,可以進行後續的正式測試工作。冒煙測試的執行者是版本編譯人員。

2、隨機測試

隨機測試(ad-hoc testing),主要是根據測試者的經驗對軟體進行功能和效能抽查。隨機測試是根據測試說明書執行樣例測試的重要補充手段,是保證測試覆蓋完整性的有效方式和過程。主要是對被測軟體的一些重要功能進行複測,也包括測試那些當前的測試樣例(testcase)沒有覆蓋到的部分。另外,對於軟體更新和新增加的功能要重點測試。重點對一些特殊點情況點、特殊的使用環境、併發性、進行檢查。尤其對以前測試發現的重大bug,進行再次測試,可以結合回歸測試(regressive testing)一起進行。

五、安全性測試

安全性測試是要檢驗在系統中已經存在的系統安全性、保密性措施是否發揮作用,有無漏洞。

軟體的安全性測試比較權威的測試模組和方法:

功能驗證       採用黑盒測試方法,對涉及安全的軟體功能進行測試

漏洞掃瞄       採用主機或系統漏洞掃瞄器自動檢測遠端或本機安全性弱點

模擬攻擊試驗   採用冒充、重演、訊息篡改、服務拒絕、內部攻擊、外部攻擊、陷阱門、特洛伊木馬方法進行測試

偵聽技術       對資料進行擷取分析的過程,主要用於對網路加密的驗證

六、效能測試performance testing

在交替進行負荷和強迫測試時常用的術語。效能測試關注的是系統的整體。它和通常所說的強度、壓力/負載測試測試有密切關係。所以壓力和強度測試應該與效能測試一同進行。

軟體測試 測試技術

一 按開發階段分類 1.單元測試 又叫模組測試,對軟體最小組成單元測試。2.整合測試 也叫聯合 聯調 組裝測試,將程式模組組裝起來,對系統的 介面及整合後的功能 進行正確性檢測的測試工作。3.系統測試 對系統的功能 效能 軟硬體環境進行測試。系統測試包括 回歸測試 和 冒煙測試 冒煙測試 系統測試 ...

軟體測試技術

軟體測試技術 事實上,如果在測試某個程式段時發現了可以糾正的缺陷,或者測試最終確定再沒有其他缺陷,則應將這次合理設計並得到有效執行的測試稱作是 成功的 而所謂 不成功的 測試,僅指未能適當地對程式進行檢查,未能找出程式中潛藏缺陷的測試。軟體測試就是證明軟體不存在錯誤的過程 對幾乎所有的程式而言,甚至...

軟體測試技術 黑盒測試

黑盒測試就是把測試物件看做乙個不透明的黑盒子,不必了解程式的內部邏輯和結構,只需按照需求規格說明書檢查程式的功能是否符合 黑盒測試主要是為了發現以下幾點錯誤 1 是否有不正確或者遺漏的功能 2 在介面上,輸入能否被正確的接收,是否能輸出正確的結果 3 是否有資料結構錯誤或者外部資訊訪問錯誤 4 效能...