什么是軟件測試?

發表于:2007-05-05來源:作者:點擊數: 標簽:軟件測試開發評測什么軟件
軟件測試 軟件測試是軟件 開發 過程的重要組成部分,是用來確認一個程序的品質或 性能 是否符合開發之前所提出的一些要求。軟件測試就是在軟件投入運行前,對軟件 需求分析 、設計規格說明和編碼的最終復審,是軟件 質量保證 的關鍵步驟。軟件測試是為了發現
軟件測試

      軟件測試是軟件開發過程的重要組成部分,是用來確認一個程序的品質或性能是否符合開發之前所提出的一些要求。軟件測試就是在軟件投入運行前,對軟件需求分析、設計規格說明和編碼的最終復審,是軟件質量保證的關鍵步驟。軟件測試是為了發現錯誤而執行程序的過程。軟件測試在軟件生存期中橫跨兩個階段:通常在編寫出每一個模塊之后就對它做必要的測試(稱為單元測試)。編碼和單元測試屬于軟件生存期中的同一個階段。在結束這個階段后對軟件系統還要進行各種綜合測試,這是軟件生存期的另一個獨立階段,即測試階段。

一、軟件測試的目的

      軟件測試的目的,第一是確認軟件的質量,其一方面是確認軟件做了你所期望的事情(Do the right thing),另一方面是確認軟件以正確的方式來做了這個事件(Do it right)。

      第二是提供信息,比如提供給開發人員或程序經理的反饋信息,為風險評估所準備的信息。

      第三軟件測試不僅是在測試軟件產品的本身,而且還包括軟件開發的過程。如果一個軟件產品開發完成之后發現了很多問題,這說明此軟件開發過程很可能是有缺陷的。因此軟件測試的第三個目的是保證整個軟件開發過程是高質量的。

      軟件質量是由幾個方面來衡量的:一、在正確的時間用正確的的方法把一個工作做正確(Doing the right things right at the right time.)。二、符合一些應用標準的要求,比如不同國家的用戶不同的操作習慣和要求,項目工程中的可維護性、可測試性等要求。三、質量本身就是軟件達到了最開始所設定的要求,而代碼的優美或精巧的技巧并不代表軟件的高質量(Quality is defined as conformance to requirements, not as “goodness” or “elegance”.)。四、質量也代表著它符合客戶的需要(Quality also means “meet customer needs”.)。作為軟件測試這個行業,最重要的一件事就是從客戶的需求出發,從客戶的角度去看產品,客戶會怎么去使用這個產品,使用過程中會遇到什么樣的問題。只有這些問題都解決了,軟件產品的質量才可以說是上去了。

      測試人員在軟件開發過程中的任務:

      1、尋找Bug;
      2、避免軟件開發過程中的缺陷;
      3、衡量軟件的品質;
      4、關注用戶的需求。

      總的目標是:確保軟件的質量。

二、軟件測試的原則


      軟件測試從不同的角度出發會派生出兩種不同的測試原則,從用戶的角度出發,就是希望通過軟件測試能充分暴露軟件中存在的問題和缺陷,從而考慮是否可以接受該產品,從開發者的角度出發,就是希望測試能表明軟件產品不存在錯誤,已經正確地實現了用戶的需求,確立人們對軟件質量的信心。

      為了達到上述的原則,那么需要注意以下幾點:
1.應當把“盡早和不斷的測試”作為開發者的座右銘
2.程序員應該避免檢查自己的程序,測試工作應該由獨立的專業的軟件測試機構來完。
3.設計測試用例時應該考慮到合法的輸入和不合法的輸入以及各種邊界條件,特殊情況要制造極端狀態和意外狀態,比如網絡異常中斷、電源斷電等情況。
4.一定要注意測試中的錯誤集中發生現象,這和程序員的編程水平和習慣有很大的關系。
5.對測試錯誤結果一定要有一個確認的過程,一般有A測試出來的錯誤,一定要有一個B來確認,嚴重的錯誤可以召開評審會進行討論和分析。
6.制定嚴格的測試計劃,并把測試時間安排的盡量寬松,不要希望在極短的時間內完成一個高水平的測試。
7.回歸測試的關聯性一定要引起充分的注意,修改一個錯誤而引起更多的錯誤出現的現象并不少見。
8.妥善保存一切測試過程文檔,意義是不言而喻的,測試的重現性往往要靠測試文檔。


三、軟件測試的對象

  軟件測試并不等于程序測試。軟件測試應該貫穿整個軟件定義與開發整個期間。因此需求分析、概要設計、詳細設計以及程序編碼等各階段所得到的文檔,包括需求規格說明、概要設計規格說明、詳細設計規格說明以及源程序,都應該是軟件測試的對象。

  在對需求理解與表達的正確性、設計與表達的正確性、實現的正確性以及運行的正確性的驗證中,任何一個環節發生了問題都可能在軟件測試中表現出來。 


四、軟件測試方法
 
 
軟件測試的基本方法
單元測試的基本方法
綜合測試的基本方法
確認測試的基本方法
系統測試的基本方法
軟件測試的基本方法

  軟件測試的方法和技術是多種多樣的。
  對于軟件測試技術,可以從不同的角度加以分類:

  從是否需要執行被測軟件的角度,可分為靜態測試動態測試。
  從測試是否針對系統的內部結構和具體實現算法的角度來看,可分為白盒測試黑盒測試;

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97