軟件測試經典bug匯總,軟件測試(二)-經典測試技術-靜態測試

 2023-12-25 阅读 35 评论 0

摘要:? 1. 靜態測試? 軟件測試經典bug匯總。 在軟件測試技術之中,靜態測試是經典的測試技術一類。這里,我們先概? 要解釋和說明一下靜態測試技術。? ? 靜態測試不以測試數據的執行而是對測試對象的分析過程。? ? 靜態測試存在于軟件生命周期的各級測試。如&#x

?

1. 靜態測試?

軟件測試經典bug匯總。
在軟件測試技術之中,靜態測試是經典的測試技術一類。這里,我們先概?
要解釋和說明一下靜態測試技術。?
? 靜態測試不以測試數據的執行而是對測試對象的分析過程。?
? 靜態測試存在于軟件生命周期的各級測試。如,需求分析、概要設計、?詳細設計及組件測試、集成測試和系統測試的階段或層級。?
? 靜態測試的方法,主要有人工(手工)評審靜態分析(人工或機器自?動檢測)兩大類。通常可分別采用一種方法或混合使用兩種方法。?
? 靜態測試中的評審(或審查)的基本思想和目標是對軟件缺陷或錯誤的?一種預防措施。因而軟件技術文檔的審查是靜態測試的主要任務之一。?
? 靜態測試的技術方法構成和說明。

如下圖 1 所示。?

靜態測試技術,

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖 1 靜態測試技術方法的構成?

-針對需求分析和概要設計進行的評審。評審在需求分析概要分析階段?建立的評審基礎上開展,有人工評審靜態技術分析兩個過程。?
-人工評審分為正式評審非正式評審。正式評審是執行對被測對象(文檔或程序)檢查的活動及過程(也稱為技術評審);非正式評審主要采用對文檔或程序的走查活動及過程。如,對某一個具體程序的走查。走查通常采用單獨或集體審閱的方式進行。?

2. 靜態測試內容及過程 靜態測試內容及過程?


(1)靜態測試內容?
靜態測試的內容包含:測試需求分析、測試概要分析、測試詳細設計、測試執行與測試結果分析?
(2)靜態測試過程?

  • 進行測試需求分析:這是靜態測試過程的首個階段,將確定測試的需求,建立起測試基礎與評審基礎。?
  • 進行測試概要設計:在測試需求分析基礎上,完成對測試方案的制定。如,測試內容、測試目標、測試策略、測試方法等。?
  • 進行測試詳細設計:這個階段主要完成測試進程中,各項具體任務安排和實施的細節考慮。如,測試用例設計等。?
  • 測試執行與結果分析:根據靜態測試的計劃進行靜態測試執行的過程,各項測試任務的完成,并提交測試工作交付物。?

3. 靜態測試的實施與執行?

(1) 靜態測試的實施?

靜態測試通常采用兩種策略:人工靜態分析借用工具靜態分析。?
人工靜態分析發揮人的智力和具有的邏輯思維優勢,在分析過程中也常借助專用的靜態測試分析工具來輔助。目前,實際工作中基本都是采用兩種方法的混合模式,既充分發揮了發揮人的智慧,又運用了機器(工具)分析的高效便捷。
(2) 靜態分析的過程有別于編譯過程?
編譯的功能是不能替代測試的。雖然編譯系統也能檢查軟件(程序)中的錯?誤,但其主要的作用是檢查程序的語法等錯誤。這是因為編譯系統并不具備軟件測試的功能,并無針對性的去尋找特定的軟件測試對象中的缺陷、錯誤的功效。
而測試通常是要通過執行測試用例來實現的。同時,編譯是無法檢測到程序的邏輯錯誤或缺陷的。?
(3) 代碼檢查?
代碼檢查的內容主要包括:代碼走查桌面檢查代碼審查等活動及過程。
代碼檢查其功效是能快速找到軟件缺陷或錯誤。測試業界實踐表明,通過代碼(通常是源代碼)的走查過程,可檢查到程序中 30-45%的程序邏輯設計及編碼中的缺陷或者錯誤。代碼檢查在實際軟件開發過程中被普遍采用,特別是針對組件(即
單元)測試。?


4.靜態測試的結構分析方法?

(1)以圖形方式表現程序內部結構?
靜態結構分析主要以圖形的方式來表達程序內部的結構關系。如,函數調用關系圖,函數內部控制流圖等。函數調用關系圖是以直觀的圖形方式描述一個程序中各個函數的調用和被調用的關系; 函數內部控制流圖以有向圖來表達函數內部的程序控制邏輯。?

(2) 以程序的控制流圖顯示程序函數的邏輯結構?
程序的控制流圖由多個節點和連接的邊所構成。一個節點代表一條語句或數條語句,連接結點叫作邊,邊表示節點之間的控制流向。圖 2 所示是一個控制流圖的實例。?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖 2 一個程序控制流圖?

?(3)檢查項?
靜態測試的檢查項,主要有:代碼風格和規則的審核;程序設計和結構的?
審核;業務邏輯的審核。?
(4) 代碼的質量度量?
針對軟件的可測試性、可讀性(可維護性),通常有 3 種不同的代碼質量度量?
參數。?
? Line(行)復雜度。Line 復雜度是以代碼的行數作為計算度量的基準。
? Halstead(運算符與運算元)復雜度。Halstead 復雜度是以程序中使用到的運算符與運算元數量作為計數目標(直測指標),據此來計算程序的容量和工作量。?
? McCabe(圈)復雜度。它是將程序流程圖結構轉化為有向圖結構(見圖?2),以圖形(有向圖)為基礎來衡量軟件或程序的復雜度度量。?
代碼質量度量常常通過靜態測試來獲得,所以靜態測試方法也稱為靜態分析,靜態測試是對被測程序進行質量特性分析方法的總稱。?
(5)檢查與規范、標準的一致性?
通過靜態測試工具可檢查測試對象是否與應用的程序規范、標準的相一致,以檢查軟件程序是否遵循了大部分的編程規則與標準規范。以工具檢查的優勢是可快速并準確的幫助開發者與測試人員進行自動化檢測過程,以發現被測對象與規范、標準的一致性(其后例舉)。?

?

?

?

?

?

?
主要參考文獻?
1.《軟件測試教程(第 3 版)》,賀平,電子工業出版社,2014?
2. 范根檢查法(Fagan inspection)?
* 范根檢查法是一種正式的,結構化的評審方法。針對的評審對象包含軟件開發生命周期中的需求說、
系統設計、測試樣例程序代碼等大部分的軟件開發中的輸出物。?

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/196850.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息