1. 軟件測試基礎- 1.1什麼是測試?

關鍵詞
覆蓋(coverage)、調試(debugging)、缺陷(defect)、錯誤(error)、失效(failure)、質量 (quality)、質量保證(qualityassurance)、根本原因(root cause)、測試分析(test analysis)、測試依據(test basis)、測試用例(test case)、測試結束(test completion)、測 試條件(test condition)、測試控制(test control)、測試數據(test data)、測試設計(test
design)、測試執行(test execution)、測試執行進度表(test execution schedule)、測試實施 (test implementation)、測試監督(test monitoring)、測試對象(test object)、測試目標 (test objective)、測試結果參照物(test oracle)、測試計劃(test planning)、測試規程 (test procedure)、測試套件(test suite)、測試(testing)、測試件(testware)、可追traceability)、確認(validation)、驗證(verification)

軟件測試基礎的學習目標
1.1 什麼是測試?
FL-1.1.1 (K1) 識別典型的測試目標
FL-1.1.2 (K2) 區分測試與調試的不同
1.2 爲什麼需要測試?
FL-1.2.1 (K2) 給出爲什麼需要測試的例子
FL-1.2.2 (K2) 描述測試與質量保證之間的關係,舉例說明測試是如何提高軟件質量的
FL-1.2.3 (K2) 辨別錯誤、缺陷和失效
FL-1.2.4 (K2) 辨別引起缺陷的根本原因及其影響
1.3 七項測試的基本原則
FL-1.3.1 (K2) 解釋測試的七項基本原則
1.4 測試過程
FL-1.4.1 (K2) 解釋測試過程中的環境影響
FL-1.4.2 (K2) 描述測試過程中的測試活動和各自的任務
FL-1.4.3 (K2) 區分用於支持測試過程的工作產品
FL-1.4.4 (K2) 解釋在測試依據和測試工作產品之間保持可追溯性的價值
1.5 測試的心理學
FL-1.5.1 (K1) 識別影響測試成功與否的心理因素
FL-1.5.2 (K2) 解釋測試活動所需的思維方式和開發活動所需的思維方式之間的差異

1.1.什麼是測試

軟件系統是生活中不可或缺的一部分,包括從商業應用(比如銀行系統)到消費產品(比如汽車)的各個領域。然而,很多人都有過這樣的經歷:軟件並沒有按照預期進行工作。不能正常工作的軟件會導致許多問題,包括資金、時間和商業聲譽的損失,甚至是傷害或死亡。軟件測試是評估軟件質量和降低軟件運行中出現失效風險的一種方式。

對測試的常見誤解是,它只包含了運行測試,即執行軟件和檢查結果。軟件測試是一個包含了許多不同活動的過程;測試執行(包含檢查結果)只是這些活動之一。測試過程還包括諸如測試計劃、測試分析、測試設計、測試實施、報告測試進度和結果,以及評估測試對象的質量等活動。

有些測試確實涉及到被測組件或系統的執行,這種測試稱爲動態測試。不涉及運行被測組件或系統的測試,稱爲靜態測試。所以,測試還包括評審工作產品,例如需求、用戶故事和源代碼。

另一個關於測試的常見誤解是,它完全關注於需求、用戶故事或其他規格說明的驗證。雖然測試確實涉及檢查系統是否滿足指定的需求,但它也包含確認,即檢查系統在其運行的環境中是否滿足用戶和其他干係人的需求。

測試活動在不同的生命週期中的組織和實施是不同的。

1.1.1.典型的測試目標

對於給定的任何項目,其測試目標可以包括

  • 評估工作產品,例如需求、用戶故事、設計和代碼
  • 驗證是否實現了所有指定的需求
  • 確認測試對象是否完成,並按照用戶和其他干係人期望那樣的工作
  • 建立對被測對象質量級別的信心
  • 預防缺陷
  • 發現失效和缺陷
  • 爲干係人提供足夠的信息以允許他們做出明智的決策,特別是關於測試對象的質量級別
  • 降低軟件質量不足帶來的風險(例如運行軟件時,發現了之前未發現的失效)
  • 遵守合同、法律或法規要求或標準,和或驗證測試對象是否符合這些要求或標準

根據被測試組件或系統的環境、測試級別和軟件開發生命週期模型的不同,測試目標會有所變化。不同包括:

  • 在組件測試時,儘可能多的發現失效,以便儘早識別和修復潛在的缺陷可能是其一個目標。而另一個目標可能是增加組件測試時的代碼覆蓋率。
  • 在驗收測試時,確認系統能夠按照預期工作並且滿足用戶需求可能是其一個目標。而另一個測試目標可能是爲干係人提供關於在給定時間發佈系統的風險信息。

1.1.2.測試與調試

測試和調試是兩個不同的概念。執行測試可以發現由於軟件缺陷引起的失效。而調試是發現、 分析和修復這些缺陷的開發活動。隨後的確認測試檢查修復活動是否解決了缺陷。有的時候,測試員負責開始及最終的確認測試,而開發人員則負責調試及相關的組件測試。然而,在敏捷開發和其他的一些軟件生命開發週期中,測試員也可能會參與調試和組件測試。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章