系统测试,集成测试,单元测试的联系与区别
首先對三個測試都介紹一下這三者的基本概念
一:系統測試
按名字來看,系統測試是對軟硬件集合在一起的系統,驗證時應盡可能模擬實際的運行環境與條件,通過與需求做比較,
發現與系統定義不符合或與之矛盾的地方的一種測試。
系統測試常用類型:功能、性能、壓力、容量、安全性、GUI、可用性、安裝、配置、異常(恢復性)、備份、健壯性、文檔、在線幫助、網絡、穩定性測試。
1.功能測試:
1) 概念:根據產品的SRS和測試需求列表,驗證產品的功能實現是否符合產品的需求規格
2) 目標:為了發現以下幾類錯誤
a) 是否有不正確或遺漏了的功能
b) 功能實現是否滿足用戶需求和系統設計的隱藏需求
c) 輸入能否正確接受?能否正確輸出結果?
2. 性能測試:
1) 概念:用來測試軟件在集成系統中的運行性能
2) 目標:度量系統相對于預定義目標的差距
3) 工具:LoadRunner、WebLoad、SilkPerformer
4) 重要性:
a) 性能是質量的重要組成部分
b) 給用戶樹立良好形象
c) 節省成本的重要手段
5) 性能測試的關鍵:有效的協調、正確的模型、瓶頸的定位、合理的建議
6) 性能需求五大特性:需求行、代表性、完整性、可測試性、可用性
3. 壓力測試:關注穩定性和破壞性
1) 目的:調查系統在其資源超負荷的情況下的表現
2) 目標:通過極限測試方法,發現系統在極限或惡劣環境中自我保護能力,主要驗證系統的可靠性。
4. 容量測試:
1) 目的:使系統承受超額的數據容量來發現它是否能夠正確處理
2) 關注點:
a) 整體的業務流量(一般關注靜態容量)
b) 數據庫的容量
c) 最大文件數目
d) 最大事務數
5. 安全性測試:口令認證、加解密技術、權限管理、安全日志
6. GUI測試:
1) 關注點:界面實現與界面設計的吻合情況、確認界面處理的正確性
2) 對象:簡單界面元素、組合類界面元素、完整界面(窗口)
3) 內容:外觀、界面元素行為、布局、友好功能
7. 可用性測試:
關注點:
1)復雜的功能或指令
2)難的安裝過程
3)誤信息過于簡單
4)戶被迫去記住太多的信息
5)語法、格式和定義不一致
8.配置測試
概念:測試系統在各種軟硬件配置、不同的參數配置下系統具有的功能和性能
目標:驗證全部配置的可操作性和有效性,特別需要對最大配置、最小配置或特殊配置進行測試
9. 異常測試:
概念:又叫系統容錯和可恢復性測試,通過人工干預手段使系統產生軟、硬件異常,通過驗證系統異常前后的功能和運行狀態,
達到檢驗系統的容錯、排錯和恢復的能力。它是系統可靠性評價的重要手段。
容錯處理:系統自動處理、人工干預處理
系統可靠性指標:平均失效時間間隔(MTBF)、平均恢復時間(MTTR) 系統可靠性設計技術:
1) 避開錯誤
2) 容錯技術:結構冗余(動、靜態)、信息冗余、時間冗余、硬件冗余、附加冗余技術
10.健壯性測試:Robustness Testing
用于測試系統在出現故障時,是否能夠自動恢復或忽略故障繼續運行
11. 網絡測試:
概念:在網絡環境下和其他設備對接,進行系統功能、性能與指標方面的測試,保證設備對接正常。
內容:考察系統的處理能力、系統兼容性、系統穩定可靠性及用戶使用等方面。
1) 一致性測試:檢測系統與協議規范符合程度
2) 性能測試:檢測協議實體或系統的性能指標
3) 互操作性測試:
4) 堅固性測試:檢測協議實體或系統在各種惡劣環境下運行的能力
12. 系統穩定性測試: 目的是評價系統在一定負荷情況下、長時間的運行情況。
二:單元測試
1、單元的基本屬性:
1)明確的功能
2)可定義的規格
3)與其他單元接口的清晰劃分
2、單元測試的目的:
在于發現各模塊內部可能存在的各種錯誤,主要是基于白盒測試。
a)驗證代碼是與設計相符合的;
b)發現設計和需求中存在的錯誤;
c)發現在編碼過程中引入的錯誤。(和設計不相符或和設計相符,但是由于
編碼疏漏引起)
3、單元測試關注的重點:
出錯處理、單元接口、局部數據結構、獨立路徑、邊界條件
4、單元測試的主要關注點:
1)參數的屬性、順序、個數是否與LLD一致
2)不能修改只做輸入用的形參,否則可能導致數據的錯誤修改
3)約束條件是否通過形參來傳送
5、驅動和樁的功能:
1)驅動單元:被測函數的主函數,能接受輸入數據,輸出實際測試結果
2)樁單元:用來代替所測單元調用的子單元
6、單元測試策略:
孤立的測試策略、自頂向下、自底向上的單元測試策略
1)孤立的測試策略:
·方法:不考慮每個模塊與其他模塊之間的關系,為每個模塊設計樁模塊和驅動模塊。每個模塊進行獨立的單元測試。
·優點:該方法是最簡單,最容易操作的。可以達到高的結構覆蓋率。該方法是純粹的單元測試。
·缺點:樁函數和驅動函數工作量很大,效率低。
2)自頂向下的單元測試策略:
·方法:先對最頂層的單元進行測試,把頂層所調用的單元做成樁模塊。其次對第二層進行測試,使用上面已測試的單元做驅動模塊。如此類推直到測試完所有模塊。
·優點:可以節省驅動函數的開發工作量,測試效率較高。
·缺點:隨著被測單元一個一個被加入,測試過程將變得越來越復雜,并且開發和維護的成本將增加。
3)自底向上的單元測試策略:
·方法:先對模塊調用層次圖上最低層的模塊進行單元測試,模擬調用該模塊的模塊做驅動模塊。然后再對上面一層做單元測試,用下面已被
測試過的模塊做樁模塊。以此類推,直到測試完所有模塊。
·優點:可以節省樁函數的開發工作量,測試效率較高。
·缺點:不是純粹的單元測試,底層函數的測試質量對上層函數的測試將產
生很大的影響。
7、單元測試的四個階段:測試計劃:完成單元測試計劃;
·測試設計:完成單元測試方案;
·測試實現:完成單元測試用例、單元測試規程、單元測試腳本及數據文件;
·測試執行:執行單元測試用例,修改發現的問題并進行回歸測試,提交單元測試報告。
三:集成測試
集成測試的目的:確保各組件組合在一起后能夠按照既定意圖寫作運行,并確保增量的行為正確(屬于灰盒測試)
1)驗證接口是否與設計相符
2)發現設計和需求中存在的錯誤
2.集成測試關注的重點:單元間的接口、集成后的功能
3.集成測試的層次:模塊內集成、子系統內集成、子系統間集成
4.集成測試策略:
1)大爆炸集成
2)自頂向下集成
3)自底向上集成
4)三明治(混合式)集成
5)基干集成
6)分層集成
7)基于功能的集成
8)基于消息的集成
9)基于進度的集成
10)基于風險的集成
三者之間的區別:
根據不同的測試階段,測試可以分為單元測試、集成測試、系統測試和驗收測試。
體現了測試由小到大、又內至外、循序漸進的測試過程和分而治之的思想。
單元測試的粒度最小,一般由開發小組采用白盒方式來測試,主要測試單元是否符合“設計”。
集成測試界于單元測試和系統測試之間,起到“橋梁作用”,一般由開發小組采用白盒加黑盒的方式來測試,既驗證“設計”,又驗證“需求”。
系統測試的粒度最大,一般由獨立測試小組采用黑盒方式來測試,主要測試系統是否符合“需求規格說明書”。
驗收測試與系統測試相似,主要區別是測試人員不同,驗收測試由用戶執行。
黑盒測試不考慮程序內部結構和邏輯結構,主要是用來測試系統的功能是否滿足需求規格說明書。一般會有一個輸入值,一個輸入值,和期望值做比較。
白盒測試主要應用在單元測試階段,主要是對代碼級的測試,針對程序內部邏輯結構,測試手段有:語句覆蓋、判定覆蓋、條件覆蓋、路徑覆蓋、條件組合覆蓋 集成測試主要用來測試模塊與模塊之間的接口,同時還要測試一些主要業務功能。
系統測試是在經過以上各階段測試確認之后,把系統完整地模擬客戶環境來進行的測試
總結
以上是生活随笔為你收集整理的系统测试,集成测试,单元测试的联系与区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用 XAML 格式化工具:XAML S
- 下一篇: Go代码启动默认浏览器