軟體可測試性

维基百科,自由的百科全书
跳转至: 导航搜索

軟體可測試性是指一個软件工件(軟體系統、模組、需求文件或設計文件等)在一給定的測試環境下,可支援測試的程度。

软件工件的可測試性不是一個内在英语Intrinsic and extrinsic properties性質,不像軟體大小一様可以直接量測。軟體可測試性是一個外在性質,由待測試的軟體及測試目標、方法及測試資源(測試環境)之間的相互關係來決定。

若軟體的可測試性低,可能會造成測試工作的增加。在一些極端的情形下,缺乏可測試性可能會使部份甚至全部的測試或軟體需求英语Software requirements無法進行。

背景知識[编辑]

依照实证的假設,軟體測試的工作量及有效性和以下幾個因素有關:

  • 軟體需求英语Software requirements的性質。
  • 軟體本身的性質(像大小、複雜度及可測試性)。
  • 測試方法的的性質。
  • 開始及測試流程的性質。
  • 和測試流程有關人員的资格和动机。

軟體元件的可測試性[编辑]

軟體元件(模組或類別)的可測試性和以下因素有關:

  • 可控制性:是否可以將待測元件的狀態控制到如測試條件要求。
  • 可觀察性:是否可以觀察(中間或最後的)測試結果。
  • 可隔離性:待測元件是否可以隔離測試。
  • 关注点分离:待測元件是否有單一且清楚定義的任務。
  • 易懂性:待測元件是否有說明文檔,或是本身可讀性很高。
  • 可自动化性:待測元件是否可以自動測試。
  • 异质性:是否需要不同的測試方法及工具平行測試。

軟體元件的可測試性可以用以下方式提昇:

需求的可測試性[编辑]

具有測試性的軟體需求英语Software requirements需求要符合以下的條件:

  • 一致性
  • 完整性
  • 明确不含糊
  • 可量化(像「反應時間快」的需求是無法被驗證的)
  • 實務上的軟體驗證及確認(不只是理論上可行,在有限資源下也是可實現的)

相關條目[编辑]

參考資料[编辑]