自動化測試與自動化測試生命周期

發表于:2014-11-27來源:uml.org.cn作者:不詳點擊數: 標簽:自動化測試
軟件測試[2],就是在軟件投入運行前,對軟件需求分析、設計規格說明和編碼的最終復查,是軟件質量保證的關鍵步驟。 定義1:軟件測試是為了發現錯誤而在規定的條件下執行

  1.1 自動化測試的定義及概述

  1.1.1 軟件測試的定義與分類

  軟件測試[2],就是在軟件投入運行前,對軟件需求分析、設計規格說明和編碼的最終復查,是軟件質量保證的關鍵步驟。

  定義1:軟件測試是為了發現錯誤而在規定的條件下執行程序的過程。

  定義2:軟件測試是根據軟件開發各階段的規格說明和程序的內部結構而精心設計一批測試用例(即輸入數據及其預期的輸出結果),并利用這些測試用例去運行程序,以發現程序錯誤的過程。

  由軟件測試的定義,不難看出測試的目的[13],是尋找錯誤,并且是盡最大可能找出最多的錯誤。著名的Grenford J. Myers在《The Art of Software Testing》一書中提出以下觀點:

  測試是程序的執行過程,目的在于發現錯誤;

  一個好的測試用例在于發現至今未發現的錯誤;

  一個成功的測試是發現了至今未發現的錯誤的測試。

  軟件測試,按照不同的分類原則有不同的分類結果:

  (1) 按測試用例設計方法分,軟件測試分為:黑盒測試,白盒測試和灰盒測試。

  黑盒測試(Black-box testing),又稱為功能測試或數據驅動測試,把系統看成一個黑盒子,不考慮程序的內在邏輯,只根據需求規格說明書的要求來檢查程序的功能是否符合它的功能說明。

  白盒測試(White-box testing),又稱為結構測試或邏輯驅動測試,允許測試人員對程序內部邏輯結構及有關信息來設計和選擇測試用例,對程序的邏輯路徑進行測試。

  灰盒測試(Gray-box testing),是融合了白盒和黑盒測試的一種測試策略,又稱混合測試法

  本文主要涉及的是根據需求規格說明書進行的黒盒測試。

  (2) 按測試策略和過程分,軟件測試分為:單元測試、集成測試(組裝測試)、確認測試、系統測試以及回歸測試[2]。

  單元測試(Unit Testing),又稱模塊測試,是最小單位測試,是在系統開發過程中要進行的最低級別的測試活動。單元測試活動中對源代碼實現的每個程序單元進行測試,檢查各個程序模塊是否正確地實現了規定的功能。其目的在于發現各模塊內部可能存在的各種錯誤,單元測試需要從程序的內部結構出發設計測試用例,必要的時候要制作驅動模塊和樁模塊。測試工程師要依據詳細設計說明書和源程序清單,了解模塊的I/O條件和邏輯結構。主要采用白盒測試的測試用例,輔之以黒盒測試的測試用例。

  集成測試(Integration Testing),也稱為組裝測試,是在單元測試的基礎上,將所有模塊按照結構設計要求組裝成為一個可運行的系統。集成測試對應于軟件概要設計階段的測試,它要求盡可能地暴露程序單元或模塊間接口和軟件設計上的錯誤和缺陷,確保程序單元或模塊間接口正確和軟件結構合理。集成測試按系統集成方式,可分為非增量式和增量式兩種。其中增量式集成方式可分為自定向下集成、自底向上集成和混合增量式集成。集成測試主要依據概要設計說明書,主要采用黒盒測試,輔之以白盒測試方法。

  系統測試(System Testing),是基于一定的計算機硬件環境,對整個軟件進行的一系列測試;是將已經通過集成測試的軟件與具有一定代表性的計算機實用環境相結合,根據軟件項目系統級的有關文檔,檢查軟件與系統定義、與需求的符合性,檢驗并確認軟件在整個系統中的功能、性能和正確性。完成集成測試后的軟件系統,必須與系統的其他元素相結合,進行系統級的確認和驗證測試。

  所謂確認(validation),是一系列的活動和過程,其目的是想證實在給定的外部環境下軟件的邏輯正確性。分為靜態確認和動態確認。

  所謂驗證(verification),是試圖證明在軟件生成周期各個階段以及階段間的邏輯協調性、完備性和正確性。

  系統測試主要采用黒盒測試方法,對于具體的項目,這個階段的測試中非常重要的一點是建立滿足具體軟件項目的仿真環境。

  驗收測試(Acceptance Testing),是以用戶為主的測試。一般,在軟件系統測試結束以及軟件配置審查之后開始,驗收測試應由用戶、測試人員、軟件開發人員和質量保證人員一起參與,驗證軟件系統的功能和性能及其它特性是否與用戶的要求一致。

  回歸測試(Regression Testing)不是一個特定的測試級別,只要對軟件代碼有修改,不論是修改錯誤還是增加新的功能或是提高性能,原則上都要進行回歸測試,以保證對代碼修改的正確性,且不會對其余部分帶來負面影響。本文中主要論述的是在集成測試和系統測試階段遇到代碼變動所進行的重復測試?;貧w測試可以通過重新執行所有的測試用例的一個子集進行,回歸測試集包括三種類型的測試用例:

原文轉自:http://www.uml.org.cn/Test/200804098.asp

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