軟件測試方法和技術(shù)包括軟件測試基礎(chǔ)、軟件測試方法、軟件測試過程與規(guī)范、單元測試與集成測試、系統(tǒng)測試、驗收測試、軟件本地化測試、測試自動化及其框架、白盒測試與黑盒測試等。
1.單元測試(模塊測試)
單元測試是對軟件組成單元進行測試。其目的是檢驗軟件組成單位的正確性。測試對象是:模塊。測試內(nèi)容:模塊接口測試(測試模塊里面的參數(shù)傳遞是否正確)、局部數(shù)據(jù)結(jié)構(gòu)測試(測試變量的作用域范圍)、路徑測試(if-else 判斷必須覆蓋所有分支)、錯誤處理測試、邊界測試( for 循環(huán))
2.集成測試
集成測試也稱聯(lián)合測試,將程序模塊采用適當?shù)募刹呗越M裝起來,對系統(tǒng)的接口(白盒測試)以及集成后的功能(黑盒測試進行正確性檢測的一種測試。集成主要目的是檢查軟件單位之間的接口是否正確。測試內(nèi)容:模塊之間數(shù)據(jù)傳輸、模塊之間功能沖突、模塊組裝功能正確性、全局數(shù)據(jù)結(jié)構(gòu)、單個模塊缺陷對系統(tǒng)的影響
3.系統(tǒng)測試
將軟件系統(tǒng)看成是一個系統(tǒng)的測試。包括對功能、性能以及軟件所運行的軟硬件環(huán)境進行測試。時間大部分在系統(tǒng)測試執(zhí)行階段,包括回歸測試和冒煙測試。測試內(nèi)容:功能、界面、可靠性、易用性、性能、兼容性、安全性等
4.回歸測試
回歸測試是指修改了舊代碼后,重新進行測試以確認修改沒有引入新的錯誤或?qū)е缕渌a產(chǎn)生錯誤。有了代碼修改后就進行回歸測試,根據(jù)測試階段確定回歸范圍。
5.冒煙測試
對一個硬件或硬件組件進行更改或修復后,直接給設(shè)備加電。如果沒有冒煙,則該組件就通過了測試。也可以理解為該種測試耗時短,冒煙測試的對象是每一個新編譯的需要正式測試的軟件版本,目的是確認軟件基本功能正常,可以進行后續(xù)的正式測試工作。冒煙測試的執(zhí)行者是版本編譯人員。
6.驗收測試
驗收測試是部署軟件之前的一個測試操作,也稱為交付測試。驗收測試的目的是確保軟件準備就緒,按照項目合同、任務書、雙方約定的驗收依據(jù)文檔,向軟件購買都展示該軟件系統(tǒng)滿足原始需求。
7.靜態(tài)測試
靜態(tài)測試是指不運行被測程序本身,僅通過分析或檢查源程序的語法、結(jié)構(gòu)、過程、接口等來檢查程序的正確性。‘對需求規(guī)格說明書、軟件設(shè)計說明書、源程序做結(jié)構(gòu)分析、流程圖分析、符號執(zhí)行來找錯。
8.動態(tài)測試
動態(tài)測試方法是指通過運行被測程序,檢查運行結(jié)果與預期結(jié)果的差異,并分析運行效率、正確性和健壯性等性能。大多數(shù)軟件測試工作都屬于動態(tài)測試。
9.手工測試
就是由人去一個一個的輸入測試用例,然后觀察結(jié)果,和機器測試相對應,屬于比較原始但是不可缺少的一個步驟。
10.自動化測試
就是在預設(shè)條件下運行系統(tǒng)或應用程序,評估運行結(jié)果,預先條件應包括正常條件和異常條件。簡單說自動化測試是把以人為驅(qū)動的測試行為轉(zhuǎn)化為機器執(zhí)行的一種過程。