軟體測試工作基本流程

2021-09-12 12:42:21 字數 4002 閱讀 5288

最近在為面試新工作做準備,所以想想整理一下軟體測試的基本工作流程,大致梳理一遍,這樣也便於自己在面試過程中可以沉著的面對面試管的測試工作如何進行的問題。

首先,作為測試人員需要學習並了解業務,分析需求點

為什麼測試人員要參加需求分析?也就是進行測試需求分析的目的是什麼?

第一、把使用者需求轉化為功能需求:1)對測試範圍進度量    2)對處理分支進行度量   3)對需求業務的場景進行度量   4)明確其功能對應的輸入、處理和輸出   5)把隱式需求轉變為明確。

第二、明確測試活動的五個要素:測試需求是什麼、決定怎麼測試、明確測試時間、確定測試人員、確定測試環境:測試中需要的技能,工具以及相應的背景知識,測試過程中可能遇到的風險等等。測試需求需要做到盡可能的詳細明確,以避免測試遺漏和誤解。

怎麼進行測試需求分析?

2、輔助功能:輔助完成業務功能的一些功能或者細節,例如:設定過濾條件

3、資料約束:功能的細節,主要是用於控制在執行功能時,資料的顯示範圍,資料之間的關係等

4、易用性需求:功能的細節,產品中必須提供,便於功能操作使用的一些細節,例如:快捷鍵等

6、引數需求:功能的細節,在功能執行時,需要根據引數設定不同,進行不同處理的細節

7、許可權需求:功能的細節,在功能執行的過程,根據不同的許可權進行不同的處理,不包括直接限制某個功能的許可權

8、效能約束:功能的細節,執行功能時,必須滿足的效能需求

第二、場景分析

1、考慮場景的呼叫者:考慮每乙個場景提供的服務是供哪些外部模組或者系統呼叫的,找出所有呼叫者。呼叫前提,約束都要考慮。每乙個呼叫都可以考慮成乙個大的業務流程(一般和外部有互動的業務出錯率比較大,需要重點關注)

2考慮系統內部各個場景之間的:形成內部業務流程,需要分析每個場景之間的約束關係,執行條件,組織出各種業務流程圖

第三、挖掘隱性需求

這需要測試工程師的經驗積累:1)常用的或者規定的業務流程   2)各個業務流程分支的遍歷   3)明確規定不可使用的業務流程   4)沒有明確規定但是應該不可使用的業務流程   5)其他異常或者不符合規定的操作

以上是粗略的講解了如何進行測試需求分析,詳細的測試需求方法可以參考《軟體測試需求分析方法》這篇部落格。在需求分析過程中編寫整個測試計畫,在這個過程中需要參考需求規格說明書,這個階段一般情況下是測試主管編寫的。包括測試人員,測試時間,測試工具,以及測試方法等。這是在測試需求分析中的產物《測試計畫》,如何編寫測試計畫,請參考以下文章《如何編寫乙個好的測試計畫》。

接下來就是測試用例設計:

測試用例是測試工作的最核心的模組,在執行任何測試之前,首先必須完成測試用例的編寫。測試用例是指導你執行測試,幫助證明軟體功能或發現軟體缺陷的一種說明。用例設計好後進行審核。這個地方該講的東西就多了,如何設計測試用例,設計測試用的方法,怎麼進行測試用例的審核等等。

第一、如何進行測試用例的設計

編寫測試用例之前我們需要對專案的需求有清晰的了解,對要測試什麼,按照什麼順序測試,覆蓋哪些需求做到心中有數,作為測試用例的編寫者不僅了解要有常見的測試用例編寫方法,同時需要了解被測軟體的設計、功能規格說明、使用者試用場景以及程式/模組的結構。

步驟:1、測試需求分析:從專案部拿到軟體的需求規格說明書後,開始對專案的需求進行分析,通過自己的分析、理解,整理成為測試需求, 清楚分析出被測試物件具有哪些功能。 明確測試用例中的測試集用例與需求的關係,即乙個或多個測試用例集對應乙個測試需求。

2、業務流程分析:分析完需求後,明確每乙個功能的業務處理流程,不同的功能點作業務的組合,以及專案的隱式需求。如遇複雜的測試用例設計前,先畫出軟體的業務流程。從業務流程上,應得到以下資訊:

a、 主流程是什麼?

b、 條件備選流程是什麼?

c、 資料流向是什麼?

d、 關鍵的判斷條件是什麼?

3、測試用例設計

完成以上兩步則可進行測試用例設計,功能測試用例,應盡量考慮邊界、異常、效能的情況,以便發現更多的隱藏問題。設計測試用例的常見方法:1)等價類    2)邊界值    3)因果圖    4) 判定表    5) 狀態遷移    6) 正交實驗    7) 場景法    8) 錯誤推斷(注意:編寫測試用例時,我們盡可能取的不應該是有效等價類而應該是無效等價類)

4.編寫完成後自我檢查以及部門內部評審:

1)測試用例本身的描述是否清晰,語言準確;是否存在二義性;

2)測試用例內容是否完整,是否清晰的包含輸入和預期輸出的結果;測試步驟是否清晰;

3)測試用例中使用的測試資料是否恰當,準確;

4)測試用例是否具有指導性,是否能靈活的指導軟體測試工程師通過測試用例發現更多的缺陷,而不是限制他們的思維;

5)是否考慮到測試用例執行的效率。對於不斷重複執行的步驟,是否保證了驗證點相同;或者測試用例的設計是否存在冗餘性等。這些都可能導致測試用例執行效率低下;

6)畫出軟體需求跟蹤矩陣,驗證測試用例是否完全覆蓋了需求,驗證測試用例的覆蓋性;

具體詳細內容可參考《如何有效的進行測試用例評審》

5.測試用例更新完善

測試用例編寫完成之後需要不斷完善,如遇需求更改或功能新增時,測試用例必須配套修改更新,同時在測試過程中發現設計測試用例時考慮不周,需要對測試用例進行修改完善;在軟體交付使用後客戶反饋的軟體缺陷,而缺陷又是因測試用例存在漏洞造成,也需要對測試用例進行完善。

緊接著就是在測試過程中佔很大一部分比重得測試用例執行過程

首先搭建測試環境,準備好測試資料,進行**,**通過之後,按照測試用例進入正式測試,有效的測試執行可以將測試用例發揮最大的價值。因此,測試用例規範執行有助於更好的發現**中存在的缺陷。根據個人測試工作經驗,好的測試執行應該包含如下內容:

1、測試執行中評估測試執行時間不足,需及時上報風險。滿足質量優先,進度其次原則。

2、測試用例按優先順序順序執行,通常是基本、詳細和異常順序執行。

3、未執行用例、標誌為刪除或者無效的用例,需註明原因。

4、執行過程中有疑問的測試用例(場景、操作步驟、檢查點等)需找測試設計人員澄清。

5、測試執行需對用例描述的檢查點逐一檢查,避免遺漏。

6、重視不易重現的缺陷場景,可能是乙個bug。

7、執行過程中發現有前期設計遺漏用例需補充到用例文件並執行驗證。

8、建議測試人員交叉執行重複測試用例,用例執行對相同測試人員有免疫性。避免可能的缺陷一直遺漏到現網。

9、如有需要,建議保留測試結果,結果可視。也便於不同版本間的測試結果對比。

10、已確認問題需及時按照問題單提單要求(規範和缺陷定級)提單。

11、跟蹤問題單修復情況並回歸驗證問題單。

12、每輪次測試結束,find一下是否有core檔案產生。

13、測試結束,將最終測試用例文件上傳到歸檔目錄,實現用例重用。

在測試用例執行過程中,包含了:功能測試階段、缺陷跟蹤階段(bug tracking)、回歸測試階段、系統測試階段、驗收測試階段等(系統已滿足測試條件(開發完成),按照已經評審過的測試用例依次執行,執行過程中及時記錄問題,將問題及時提交到qc上,要跟蹤缺陷。等開發修復後進行回歸測試,確認修復後關閉缺陷,如果說該問題要更新而生產上未進行驗證,就把缺陷狀態改為生產未驗證。對有異議的缺陷經甲方、開發和測試三方進行溝通討論,由甲方最終確定處理方式。在測試過程中也會碰到對需求有異議,會反饋給經理,由經理與甲方溝通來對該需求提出一些可行性建議,最終還是由甲方來確定具體根據各個公司的業務流程而不一樣)。

最後已達到准出要求的根據測試情況寫測試報告,對整個測試過程和版本的質量做乙個評估

測試報告是指把測試的過程和結果寫成文件,對發現的問題和缺陷進行分析,為糾正軟體的存在的質量問題提供依據,同時為軟體驗收和交付打下基礎。測試報告是測試階段最後的文件產出物。優秀的測試經理或測試人員應該具備良好的文件編寫能力,乙份詳細的測試報告包含足夠的資訊,包括產品質量和測試過程的評價,測試報告基於測試中的資料採集以及對最終的測試結果分析。

測試報告的內容可以總結為以下目錄:

首頁引言(目的、背景、縮略語、參考文獻)

測試概要(測試方法、範圍、測試環境、工具)

測試結果與缺陷分析(功能、效能)

測試結論與建議(專案概況、測試時間 測試情況、結論效能彙總)

附錄(缺陷統計)

至此並不算最後的完結工作,軟體測試還包含了線上功能檢查、當前版本問題反饋以及改進建議 等。這樣才算是軟體測試最終結束,軟體測試是貫穿於整個軟體生命週期的。

軟體測試工作終極細節流程 軟體測試流程

1 需求分析自己公司和客戶公司談專案,主要講解如何技術實現客戶的需求,當談好這些需求之後,產生需求文件,接下來產品經理把文件拿回自己的公司,準備立項會 2 立項會 產品經理講解接下來要做的專案,測試工程師主要參與聽講以及對產品經理所講的內容模組提出一些有效的建議和問題,比如某個功能點,測試的覆蓋面和...

醫療軟體測試工作流程

醫療器械產品測試型別 嵌入式裝置軟體測試 pc軟體測試 web測試 整機測試 法規測試 安全測試以及自動化測試等。醫療器械軟體測試流程 1 專案立項後,需求工程師 開發工程師 測試工程師一起針對進行需求分析 2 根據需求點使用xmind工具編寫測試點 3 需求說明文件歸檔後,根據需求文件以及測試點編...

app軟體測試工作流程

軟體測試工作流程 結合公司的專案情況制定合理的測試流程,提高測試效率和產品質量。結合公司的專案情況制定合理的測試流程,提高測試效率和產品質量。核心還是要加強專案成員之間的溝通,弱化文件。需求建立 業務發展的需要。1 產品資料的分析以及使用者的需求。2 公司內部的需求。3 產品經理的奇思妙想。需求分析...