什么是軟件測試?
軟件測試是一個驗證和驗證應用程序功能以確定它是否滿足要求的過程。這是在應用程序中發現缺陷并根據最終用戶的要求檢查應用程序功能的過程。
第三方軟件檢測機構是專門提供軟件測試服務,其出具軟件測試報告過程中可能運用到的測試方法,例如:
黑盒測試:
不基于內部設計和代碼的任何知識,而是基于需求和功能性。
白盒測試:
白盒測試:基于一個應用代碼的內部邏輯知識,測試是基于覆蓋全部代碼、分支、路徑、條件。
單元測試:
最微小規模的測試;以測試某個功能或代碼塊。典型地由程序員而非測試員來做,因為它需要知道內部程序設計和編碼的細節知識。這個工作不容易做好,除非應用系統有一個設計很好的體系結構; 還可能需要開發測試驅動器模塊或測試套具。
可用性測試:
對用戶友好性的測試。顯然這是主觀的,且將取決于目標最終用戶或客戶。用戶面談、調查、用戶對話的錄象和其他一些技術都可使用。程序員和測試員通常都不宜做可用性測試員。
安裝/卸載測試:
對軟件的全部、部分或升級安裝/卸載處理過程的測試。
恢復測試:
測試一個系統從如下災難中能否很好地恢復,如遇到系統崩潰、硬件損壞或其他災難性問題。
安全測試:
測試系統在防止非授權的內部或外部用戶的訪問或故意破壞等情況時怎么樣。這可能需要復雜的測試技術。
兼容測試:
兼容測試:測試軟件在一個特定的硬件/軟件/操作系統/網絡等環境下的性能如何。
集成測試:
一個應用系統的各個部件的聯合測試,以決定他們能否在一起共同工作。部件可以是代碼塊、獨立的應用、網絡上的客戶端或服務器端程序。這種類型的測試尤其與客戶服務器和分布式系統有關。
功能測試:
用于測試應用系統的功能需求的黑盒測試方法。這類測試應由測試員做,這并不意味著程序員在發布前不必檢查他們的代碼能否工作(自然他能用于測試的各個階段)。
系統測試:
系統測試:基于系統整體需求說明書的黑盒類測試;應覆蓋系統所有聯合的部件。
端到端測試:
類似于系統測試;測試級的宏大的端點;涉及整個應用系統環境在一個現實世界使用時的模擬情形的所有測試。例如與數據庫對話,用網絡通訊,或與外部硬件、應用系統或適當的系統對話。