軟體測試基礎知識

2021-08-19 05:48:32 字數 2215 閱讀 3129

軟體開發流程分為傳統瀑布型流程和敏捷開發流程。對應的測試流程也分為瀑布型流程和敏捷型流程。現在大部分網際網路公司基本採用的都是敏捷開發流程,進行快速迭代,持續交付的方式進行軟體開發。

我用xmind思維導圖工具將軟體測試的流程畫了一張圖,並將測試計畫的工作進行了細化。如圖1。

圖1從這張圖中可以看到,軟體測試活動的生命週期應該有5個環節:測試計畫、測試設計、測試開發、測試執行、測試報告。

今天我們主要說下測試計畫這個環節的主要任務。

在測試計畫這個環節,我們要完成這麼多工作:了解測試物件、制定測試策略、分析測試需求、評估測試工作量、籌集測試資源、形成測試計畫文件。

這些工作具體要完成什麼任務呢?我們下面逐一來說明:

我們從哪些渠道了解我們的測試物件呢?總的來說,應該有如下幾種:軟體需求說明書、軟體設計文件(概要設計文件、ui互動設計文件、功能設計文件)、原件的原型圖、軟體的競品、軟體專案計畫以及與該專案相關的一些會議紀要等。

很多公司沒有完本的文件,或者說沒有任何文件,那麼我們了解測試物件的渠道就要自己發揮主觀能動性去和產品人員、開發人員、專案人員以及其他的與該軟體專案相關的人員溝通。

我們要了解測試物件的哪些方面呢?

1、軟體的功能點有哪些?

2、軟體的目標使用者是誰?

3、軟體的架構是怎麼樣的。

4、軟體的使用到技術有哪些。

......

測試策略描述測試工程的總體方法和目標。描述目前在進行哪一階段的測試(單元測試、整合測試、系統測試)以及每個階段內在進行的測試種類(功能測試、效能測試、壓力測試等)。

測試策略包括

1、測試技術:手動、自動化

2、自動化測試框架

3、要進行哪類測試(功能測試、效能測試、相容性測試等)

4、測試完成的標準(所有測試case全部passed,所有嚴重bug全部fixed)

這個環節是整個測試活動的起點和基礎。測試需求分析的目的是要解決

測試測什麼的問題。

從測試的觀點和思路出發,為保證被測物件能夠完成設計的目標,測試人員應該做哪些工作。

測試需求分析的資料**與了解被測物件的渠道是一樣的。也是產品需求說明書、產品設計文件、其他相關的技術文件、會議紀要等材料。

分析過程可以借助思維導圖工具,從廣度和深度上對被測物件進行發散性思考。比如:考慮正常流程有哪些、異常流程有哪些、進入異常流程有什麼容錯處理。

具體的分析步驟可以按照下面的流程,如圖2所示。

圖21、了解需求範圍

從產品的各種文件中,確定軟體要完成的功能點,以及為完成這些供電、軟體要需要開發的功能模組有哪些。

2、明確目標使用者

此產品的使用者是哪些,不同使用者是否具有不同許可權,是否使用的功能不同。例如,登入使用者、非登入使用者。

3、分析功能步驟

列出所有功能點。對每個功能點的步驟進行分析。考慮不同功能點之間是否有依賴關係。有哪些可能的異常流程會導致此功能點失敗。比如網路異常、伺服器異常、系統環境異常、操作異常等會對軟體功能產生什麼影響。怎麼進行容錯。

4、挖掘影藏需求

有些需求從軟體的各種文件中可能是無法直接明確出來的。這就需要軟體測試人員要有挖掘測試需求的能力。那麼,從哪些方面進行測試需求的挖掘呢?

1)產品的整體架構設計

2)產品的具體實現細節

3)進入使用者角色,模擬真實場景的操作。

怎樣估計測試工作量:

1、對於功能測試,這主要依賴於應用的複雜度,功能點的個數,每個功能點的測試用例數量。對容量測試,主要依賴於建立測試所需資料的工作量大小。

2、搭建測試環境的複雜度。

3、測試團隊的工作效率

考慮需要測試工程師的數量、

系統資源(伺服器配置、網路資源等)等。

完整的測試計畫文件應該包含下面這些部分:

1、介紹

目的背景

測試範圍

專案檔案列表

2、測試需求

3、測試策略

測試型別

1、功能測試

2、使用者介面測試

3、效能測試

4、壓力測試

5、容量測試

6、配置測試

7、安裝測試

工具4、資源

人力資源

系統資源

5、工作進度安排

軟 件 測 試 基 礎 知 識

軟體效能指標主要有響應時間,系統響應時間和應用延遲時間,吞吐量,併發使用者數,資源利用率五種。軟體實現的演算法與系統響應時間和應用延遲時間是直接相關的,所以軟體的效能也必定與實現演算法是有關係的吞度量是指系統在單位時間內處理請求的數量,對於無鬢髮的應用系統而言,吞度量是與響應時間嚴格的反比關係,因為...

軟體測試基礎知識

1 發現軟體錯誤 2 有效定義和實現軟體部件由底層到高層的組裝過程 3 驗證軟體是否滿足任務書和系統定義文件所規定的技術要求 4 為軟體質量模型的建立提供依據。概念 軟體測試是軟體質量保證的關鍵組成部分,對軟體測試的認識可分為以下幾個階段 測試就是除錯階段 測試是證明軟體正確階段 測試是發現軟體中錯...

軟體測試基礎知識

本人部落格文章 1.確認軟體的質量 a.是確認軟體做了你所期望做的事情 do the right thing b.是確認軟體以正確的方式來做了這個事情 do it right 2.是提供資訊 比如提供給開發人員或程式經理的回饋資訊,為風險評估所準備的資訊 3.是在測試軟體軟體產品本身,而且還包括軟體...