軟件測試的分類
軟件測試的分類方法有很多種:
1.按測試內容分,分為以下幾個類型
(1)功能測試。功能測試基于需求和功能,檢查軟件是否達到原定的功能標準而不必理會軟件內部的結構即代碼的實現。
(2)性能測試。著重于軟件的運行速度、負荷、兼容性、健壯性(容錯能力/恢復能力)、安全性、可靠性等。
(3)接口測試。程序員對各個模塊進行系統聯調的測試,包含程序內接口和程序外接口測試。這個測試,在單元測試階 段進行了一部分工作,而大部分都是在集成測試階段完成的。由開發人員進行。
2.按測試階段來分,分為以下幾種類型
(1)單元測試
(2)集成測試
(3)系統測試
(4)alpha測試
(5)beta測試
(6)確認測試
3.按測試技術來分,分為以下幾個方面
(1)白盒測試
(2)黑盒測試
4.按測試手段來分,分為以下幾個方面
(1)手工測試
(2)計算機輔助測試
軟件測試的幾大原則:
1.軟件開發人員即程序員應當避免測試自己的程序

測試模型---W模型不管是程序員還是開發小組都應當避免測試自己的程序或者本組開發的功能模塊。若條件允許,應當由獨立于開發組和客戶的第三方測試組或測試機構來進行軟件測試。但這并不是說程序員不能測試自己的程序,而且更加鼓勵程序員進行調試,因為測試由別人來進行可能會會更加有效、客觀,并且容易成功,而允許程序員自己調試也會更加有效和針對性。
2. 應盡早地和不斷地進行軟件測試
應當把軟件測試貫穿到整個軟件開發的過程中,而不應該把軟件測試看作是其過程中的一個獨立階段。因為在軟件開發的每一環節都有可能產生意想不到的問題,其影響因素有很多,比如軟件本身的抽象性和復雜性、軟件所涉及問題的復雜性、軟件開發各個階段工作的多樣性,以及各層次工作人員的配合關系等。所以要堅持軟件開發各階段的技術評審,把錯誤克服在早期,從而減少成本,提高軟件質量。
3.對測試用例要有正確的態度:第一,測試用例應當由測試輸入數據和預期輸出結果這兩部分組成;第二,在設計測試用例時,不僅要考慮合理的輸入條件,更要注意不合理的輸入條件。因為軟件投入實際運行中,往往不遵守正常的使用方法,卻進行了一些甚至大量的意外輸入導致軟件一時半時不能做出適當的反應,就很容易產生一系列的問題,輕則輸出錯誤的結果,重則癱瘓失效!因此常用一些不合理的輸入條件來發現更多的鮮為人知的軟件缺陷。
4.人以群分,物以類聚,軟件測試也不例外,一定要充分注意軟件測試中的群集現象,也可以認為是“80-20原則”。不要以為發現幾個錯誤并且解決這些問題之后,就不需要測試了。反而這里是錯誤群集的地方,對這段程序要重點測試,以提高測試投資的效益。
5.嚴格執行測試計劃,排除測試的隨意性,以避免發生疏漏或者重復無效的工作。
6.應當對每一個測試結果進行全面檢查。一定要全面地、仔細地檢查測試結果,但常常被人們忽略,導致許多錯誤被遺漏。
7.妥善保存測試用例、測試計劃、測試報告和最終分析報告,以備回歸測試及維護之用。
在遵守以上原則的基礎上進行軟件測試,可以以最少的時間和人力找出軟件中的各種缺陷,從而達到保證軟件質量的目的。
文章來源于領測軟件測試網 http://www.kjueaiud.com/