什麼是靜態測試和測試評審?


什麼是靜態測試?

靜態測試是一種軟體測試方法,用於在不執行程式的情況下查詢軟體應用程式中的故障。靜態測試用於在開發的早期階段預防問題,因為此時更容易發現和糾正故障。它還有助於檢測動態測試可能錯過的故障。

另一方面,動態測試在程式碼執行時檢查應用程式。

靜態測試方法分為兩類:

  • 手動檢查 - 手動檢查包括手動程式碼分析,通常稱為評審。

  • 使用工具進行自動分析 - 自動分析本質上是使用工具執行的靜態分析。

您將在本文中學習以下內容:

  • 什麼是靜態測試?

  • 什麼是測試評審?

  • 為什麼進行靜態測試?

  • 靜態測試中測試什麼?

  • 如何執行靜態測試?

  • 靜態測試技術

  • 用於靜態測試的工具

  • 成功進行靜態測試過程的技巧

什麼是測試評審?

靜態測試評審是一個程式或會議,旨在識別任何軟體設計中的缺陷。評審的另一個好處是,所有團隊成員都能夠及時瞭解專案的進展,並且有時想法的多樣性會導致很棒的建議。文件由個人親自檢查,任何不一致之處都將得到解決。

評審進一步細分為四類:

  • 非正式評審

  • 演練

  • 技術評審

  • 檢查

在評審過程中,有四種參與測試的人員:

  • 主持人 - 檢查條目,跟蹤返工,指導團隊成員並安排會議。

  • 作者 - 對修復發現的問題和提高文件價值承擔責任。

  • 記錄員 - 在評估期間記錄缺陷並監控評審會議。

  • 評審員 - 檢查內容並查詢缺陷。

  • 經理 - 決定實施評估並確保實現評審過程目標。

以下型別的故障在靜態測試期間可能更容易檢測到:

  • 偏離標準

  • 不可維護的程式碼

  • 設計缺陷

  • 缺少需求

  • 不一致的介面規範

通常,靜態測試期間檢測到的缺陷是由於安全漏洞、未宣告的變數、邊界違規、語法違規、不一致的介面等造成的。

為什麼進行靜態測試?

靜態測試出於以下列出的原因進行:

  • 快速發現和糾正缺陷

  • 縮短了開發時間表。

  • 節省測試時間和成本

  • 提高開發效率

  • 為了在以後的測試階段減少複雜性

靜態測試中測試什麼?

在靜態測試期間評估以下專案:

  • 單元測試用例

  • 業務需求文件 (BRD)

  • 用例

  • 系統/功能需求

  • 原型

  • 原型規範文件

  • 資料庫欄位字典電子表格

  • 測試資料

  • 可追溯性矩陣文件

  • 使用者手冊/培訓指南/文件

  • 測試計劃策略文件/測試用例

  • 自動化/效能測試指令碼

如何執行靜態測試?

靜態測試以以下方式進行:

  • 進行檢查程式以徹底檢查應用程式的佈局。

  • 為每個正在測試的文件使用清單,以確保所有評估都得到充分解決。

以下是執行靜態測試的多種操作:

  • 用例需求驗證 - 它確保已檢測到所有使用者操作以及與其相關的任何輸入和輸出。用例越廣泛和完整,測試過程就越準確和完整。

  • 功能需求驗證 - 這將驗證功能需求是否涵蓋所有相關方面。它還檢查資料庫功能、介面列表以及硬體、軟體和網路需求。

  • 架構審查 - 所有業務功能,例如伺服器位置、網路圖、協議規範、負載平衡、資料庫訪問、測試裝置等。

  • 原型/螢幕模型驗證 - 此步驟包括驗證目標和用例。

  • 欄位字典驗證 - UI 中的每個欄位都具有足夠的說明,以便建立欄位級驗證測試用例。檢查欄位的最小和最大長度、列表值、錯誤訊息等。

靜態測試技術

  • 非正式評審

  • 演練

  • 技術評審

  • 檢查

  • 靜態分析

    • 資料流

    • 控制流

用於靜態測試的工具

以下是用於靜態測試的一些工具:

  • Checkstyle

  • Soot

  • SourceMeter

成功進行靜態測試過程的技巧

軟體工程中執行靜態測試的一些有用提示。

  • 專注於真正重要的事情。

  • 正確規劃和監控審查活動。在大多數情況下,軟體概述和評估將合併到同行評審中。

  • 使用舉例來培訓人員。

  • 解決人為問題

  • 將程式的正式性作為專案文化的一部分來維持。

  • 持續改進的方法和工具

  • 透過消除測試過程中的重大延遲,可以最大程度地減少測試成本和時間。

總結

  • 靜態測試的目標是儘快檢測到缺陷。

  • 靜態測試並不是真正替代動態測試;兩者都檢測不同型別的故障。

  • 評審是一種有用的靜態測試方法。

  • 評審不僅有助於發現問題,還有助於理解缺少的需求、設計缺陷和不可維護的程式碼。

更新於: 2021年6月9日

2K+ 次檢視

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告