信息技術(shù)需求呈指數(shù)增長。如今的軟件項目變得更加復(fù)雜,這使得質(zhì)量保證軟件測試成為軟件開發(fā)的一個基本方面。缺少軟件測試步驟的成本可能非常昂貴,這不僅是因為產(chǎn)品故障,而且在某些關(guān)鍵情況下還因為對人身安全的風(fēng)險。在市場上發(fā)布不可靠的軟件會導(dǎo)致商家信譽(yù)損失,從而導(dǎo)致資源、時間和金錢的損失。
一、什么是軟件測試
軟件測試過程是一個早期發(fā)現(xiàn)錯誤、驗證和確認(rèn)的過程。在這種情況下,就會出現(xiàn)一個問題:為什么軟件開發(fā)人員不能確保自由軟件中存在錯誤并且它按照初始規(guī)范工作。答案是:軟件測試,軟件測試人員不僅重現(xiàn)錯誤;他們試圖找到其他可能的方法來重現(xiàn)它。因此軟件測試對于 可靠的軟件開發(fā)至關(guān)重要,因為沒有測試人員,錯誤發(fā)現(xiàn)、驗證和確認(rèn)的負(fù)擔(dān)將落在開發(fā)人員身上,他們可能不會經(jīng)常考慮用戶的感知。這一點尤其重要,因為開發(fā)人員更注重技術(shù),而測試人員更注重流程和業(yè)務(wù)。
二、軟件開發(fā)過程有以下幾個階段:
1.規(guī)劃→2.業(yè)務(wù)需求分析→3.設(shè)計→4.編程→5.發(fā)布(生產(chǎn))→6.軟件測試→7.維護(hù)(支持)
當(dāng)測試人員在受控測試環(huán)境中直接讓用戶參與與系統(tǒng)的系統(tǒng)驗證交互時,會在舞臺上使用Alpha測試。當(dāng)測試人員在真實環(huán)境中通過受控的軟件分發(fā)過程吸引最終用戶時,使用Beta測試。
三、軟件測試過程具有三個測試級別階段:
1.單元測試(確保各個模塊正常工作)。
2.集成測試(確保由在單元測試期間獨立測試的多個單元組成的大型軟件,并且這些單元之間的干擾都正常工作)。
3.系統(tǒng)集成測試(確保所有單元都已連接,并在模擬的最終用戶環(huán)境下測試完整的軟件)。
有功能測試和非功能測試類型。功能軟件測試著眼于性能并確保軟件產(chǎn)品與預(yù)期的實際業(yè)務(wù)環(huán)境一致。非功能測試著眼于性能、可靠性和安全性的可持續(xù)性。非功能性軟件測試包括單元測試、驗證系統(tǒng)(驗收測試)、在運(yùn)行時監(jiān)控應(yīng)用程序。可靠性或穩(wěn)定性測試檢查軟件在不同條件和不同時間保持其性能水平的能力。在軟件能力方面,非功能測試包括性能測試、壓力測試和負(fù)載測試。UI測試根據(jù)收到的要求檢查GUI(圖形用戶界面)設(shè)計。可用性測試確保典型用戶能夠正確操作軟件。軟件的一個重要方面涉及其安全保護(hù),因此安全測試檢查軟件功能以執(zhí)行預(yù)期的軟件任務(wù)。
四、質(zhì)量保證(QA)軟件測試過程有幾種方法、技術(shù)和策略
在使用人為因素方面,測試過程可以通過手動測試、自動化測試。
五、軟件測試過程可以通過以下方式進(jìn)行:
黑盒(功能級別測試)、白盒(源代碼級別測試)。由于軟件測試過程需要的資源不是無限的,詳盡的測試通常是不可行的,除非在極其微不足道的情況下。公司推出包含錯誤信息的軟件是沒有好處的。為了維護(hù)商譽(yù),軟件公司需要維護(hù)軟件測試流程。