軟體測試入門,從這裡開始

shbwf發表於2012-02-13

  [摘要]

  為了有效地開展軟體測試活動,測試人員首先需要對軟體測試有個統一的認識。本文將從軟體測試目的、軟體測試型別和什麼是好的測試幾個方面談談我對軟體測試的認識。

  [正文]

  隨著客戶對軟體產品的質量要求越來越高,軟體測試在整個軟體研發中的地位也在逐步地提高,相應地要求測試人員掌握的測試知識和技能等也在增加。為了有效地開展軟體測試活動,首先測試人員需要對軟體測試有個統一的認識。本文將從軟體測試目的、軟體測試型別和什麼是好的測試幾個方面談談我對軟體測試的一點理解。

  1)軟體測試目的

  針對軟體產品開展測試活動之前,首先需要明確本輪測試的主要目的是什麼,然後才能確定測試策略和採用的測試方法,以及可以選擇哪些度量對測試過程和測試物件的質量進行評估。不同的組織和軟體產品、軟體開發和測試階段的不同,需要實現的測試目的是不盡相同的。總體而言,軟體測試的目的主要包括下面四種:

  ● 發現缺陷。軟體測試就是為了發現缺陷而檢查或者執行測試物件的過程。其基本思路是假設測試物件是存在問題的,強調測試人員不斷地設想和思考開發人員可能出現的錯誤,例如:理解的錯誤、不良的習慣等,對測試人員的主觀能動性要求很高。

  ● 增強對軟體產品質量的信心。軟體測試就是為了建立一種信心,確信測試物件能夠按照期望的設想或者結果工作。這裡的期望的設想或者結果指的是使用者需求、軟體需求文件或者功能設計文件等軟體工作產品。

  ● 為決策者提供資訊。測試過程中可以得到關於測試物件質量和風險的狀態和資訊,例如:測試執行的通過率、發現缺陷的趨勢、修改缺陷的趨勢等,這些資訊是決策者確定是否可以釋出軟體產品的判斷基礎,並可以幫助他們分析其中存在的風險和收益。

  ● 預防缺陷。通過收集和分析測試過程中得到的測試物件質量資訊和測試過程的資訊,例如:缺陷在不同模組中的分佈、在不同階段的分佈,以及其中的經驗和教訓,有助於將來的專案中避免重複某些錯誤,從而逐步提高測試的成熟度,達到預防缺陷的目的。

  上面簡單講了4 中主要的測試目的,需要注意的是它們之間並不是完全獨立和對立的。在實際的測試過程中,應該根據不同組織特點、專案特點、測試階段和測試技術等方面的具體情況,選擇合適的軟體測試,或者它們的組合。

  2)軟體測試型別

  軟體測試不僅僅只是執行測試物件進行相關的檢查活動,也不應該只是軟體開發生命週期的一個階段,軟體測試應該貫穿於整個軟體開發過程。因此,軟體測試包括了靜態測試和動態測試兩部分。

  發現測試物件中的缺陷是軟體測試的一個重要目的。缺陷發現和修復的越早,其需要的成本越低;同時,在早期發現和修復缺陷可以防止將缺陷引入到開發的下個階段,從而避免缺陷的“雪崩”效應;另外,儘早發現和修復缺陷也可以對後續的開發活動起到缺陷預防的作用。因此,靜態測試是測試人員在軟體開發生命週期中,特別是早期可以選擇的一個重要測試技術。

  除了靜態測試,動態測試也是測試人員在測試過程中需要完成的重要活動。通過選擇和採用合適的測試技術和方法,測試人員不僅可以科學地選擇測試物件的輸入以及輸入組合;也可以不斷提高和改進測試人員的測試效率和測試有效性。圖1 是軟體測試型別的架構圖。

  3)什麼是好的測試

  儘管不同的測試,其採用的測試目的和採用的測試型別可能不同的,同時測試過程中定義的測試階段、測試活動和測試方法也不盡相同,但是一個良好的測試應該具備下面的特點:

  ● 每個開發活動都有測試活動相對應;

  ● 每個測試級別都有其特定的測試目的;

  ● 與開發活動對應的每個測試級別,都應該進行相應的測試設計和執行;

  ● 測試人員應儘早介入測試;

  ● 通過風險分析和評估確定測試的重點和優先順序,以替代窮盡測試;

本文轉載自51Testing軟體測試網,檢視更多:http://www.51testing.com/html/news.html

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11323760/viewspace-1057336/,如需轉載,請註明出處,否則將追究法律責任。

相關文章