當前位置:學問君>學習教育>考研>

軟件測試中筆試中不可遺忘的基礎知識

學問君 人氣:3.02W

軟件測試是一項批判性的工作,目的就是找出軟件中的缺陷。這裏暫時不去深究爲什麼要進行軟件測試,以及軟件測試帶來的好處。只介紹軟件測試中一些基本的測試方法。根據是否檢視代碼程序分爲黑盒測試和白盒測試;根據是否執行軟件又可分爲靜態測試和動態測試。

軟件測試中筆試中不可遺忘的基礎知識

黑盒測試:又叫功能測試或行爲測試,只需考慮各個功能,不需要考慮整個軟件的內部結構及代碼。

白盒測試:訪問代碼,透過檢查代碼的線索來協助測試。

靜態測試:測試軟件不執行的部分,只是檢查和審覈。

動態測試:使用和執行軟件進行測試。

 1、靜態黑盒測試:檢查產品說明書,並在軟件編寫之前找出問題

· 對產品說明書或軟件需求報告進行進階審查:

(1)站在一個設計者的角度進行審查,找出根本性問題或遺漏之處

(2)站在客戶(使用者)的角度來審查,因爲軟件質量的定義是滿足客戶的需求

(3)研究現有的標準和規範,可以是公司習慣用語和約定、行業要求、GUI、安全標準;檢查所用標準是否正確、遺漏,是否與標準和規範相牴觸

(4)審查和測試類似軟件,檢查它的規模、複雜性、測試性、質量和可靠性、安全性

· 對產品說明書或軟件需求報告進行低層次測試:

一份優秀的產品說明書或者需求報告:必須是完整、準確、精確(不含糊、清晰)、一致、貼切、合理、代碼無關、可測試性

 2、動態黑盒測試:在不瞭解軟件如何工作的前提下進行測試

兩種基本方法:透過性測試和失效性測試

選擇測試用例:等價類劃分:把軟件具有相似輸入,相似輸出,相似操作的分在一組。一個等價類或等價類劃分是指測試相同目標或者暴露相同軟件缺陷的一組測試用例。

等價類劃分的目標:把可能的測試用例集縮減到可控制且仍然足以測試軟件的小範圍內。

(1)測試數據

透過性測試:

a) 邊界條件:軟件執行在計劃操作界限的邊界情況。測試邊界包括測試臨近邊界的有效數據、測試最後一個可能有效的數據、測試剛超過邊界的無效數據。

b)次邊界條件:典型的次邊界條件:2的冪、ASCII表

c)測試默認、空白、空值、零值和無這些數據

失效性測試:

d)測試非法、錯誤、不正確和垃圾數據

(2)測試狀態

軟件狀態:軟件當前所處的條件或者模式。

狀態測試:測試程序的狀態及其轉換。

步驟:1)建立狀態轉換圖

2)減少要測試的狀態及其轉換的數量

a. 每一種狀態至少訪問一次

b. 測試狀態之間最不常用的分支

c. 測試所有錯誤狀態及其返回值

d. 測試隨機狀態轉換

e. 測試看起來是最常見和普遍的狀態轉換

透過性狀態測試:審查軟件,描繪狀態,嘗試各種合法可能性,確認狀態及其轉換正常。

失效性狀態測試:競爭條件、重複(檢查內存泄漏)、壓迫(在不夠理想條件下執行:內存小,磁盤空間少...儘量限制軟件的必要條件)、重負(提供條件任其發揮)。