什麼是軟體測試
透過一組明確定義的評估方法(稱為測試)對開發/設計的程式碼/功能/系統進行測試以隔離錯誤和缺陷的過程稱為軟體測試。
測試確保遵守客戶提供的要求,並且產品在給定環境中按預期運行
我們對軟體測試了解多少?
- 確保交付產品的品質
- 軟體開發生命週期(SDLC)最重要的階段之一
- 測試是 SDLC 的第五階段,在開發/建置之後、部署/安裝之前完成
- 在經典的瀑布模型中,SDLC 是SDLC 中的一個區塊過程,而在AGILE 或SPIRAL 模型等其他模型中,它是一個持續的過程,作為持續整合/持續部署的一部分)(CI/CD )
- 測試的結果不止於報告錯誤/缺陷。作為後續流程,需要確保關閉和重新測試,因此 100% 品質
- 錯誤是與程式碼相關的問題,可能很重要,也可能不那麼重要。通常在開發階段本身是可識別和可尋址的。錯誤可能是由於語法錯誤、邏輯錯誤或可能是由於運行時問題造成的。大部分由開發商修復。隱藏/未識別的錯誤可能會導致系統行為被拖累,導致資源利用率不足
- 缺陷是與所獲得的規格/要求的偏差,並且是重大缺陷,需要立即解決。未修復的缺陷可能會導致資源方面的嚴重損失。通常在測試階段確定。當測試人員使用基於需求的測試案例進行測試時,可以識別與規範的偏差,將其傳回給開發人員或與客戶討論替代方案,並且可以根據討論結果解決和修復問題。
- 測試可以由測試人員根據需求和/或規格使用測試案例開發手動執行,也可以使用自動工具來執行,其中輸入測試案例和資料並分析輸出是否符合要求。
- 軟體可以進行功能測試,其中每個程式碼或功能單元都可以測試,程式碼單元和功能可以整合和測試,整個系統可以測試,健全性測試,介面可以測試或回歸(與現有的向後相容性)功能)被測試
- 非功能測試包括效能、負載、壓力、安全性、相容性、安裝、可靠性等,其中系統接受測試環境以評估其相應的行為。
軟體測試的相關性:
設計和開發的系統永遠不會完美,因為有許多人參與設計和建造系統。軟體測試作為一個過程可以確保產品的整體品質。測試確保交付的產品符合客戶要求並適合業務需求。明確定義的測試流程可確保錯誤已修復、缺陷已識別、介面協同工作、產品的安全性和健全性不會受到損害。測試結果顯示產品能夠按要求執行、接受任何測試並經受任何類型的干擾。經過驗證和驗證的產品證明了最高等級的資源及其提供長期耐用產品的能力。