1. 程式人生 > >軟件測試的生命周期&測試流程

軟件測試的生命周期&測試流程

函數 測試流程 browser 外觀 計算機 提交 經理 必須 相關

一、軟件的生命周期
二、軟件生命周期的階段
三、軟件模型
四、軟件測試的基本流程
五、軟件開發流程、測試流程梳理
六、C/S與B/S架構
七、對軟件測試行業的理解
八、常見筆試面試題

一、軟件的生命周期
定義:軟件生命周期是指軟件的產生直到報廢的生命周期。
人類整理的第一個軟件生命周期:1970年,瀑布型生命周期

二、軟件生命周期的階段
1. 問題的定義及規劃
開發方和需求方共同討論,主要是確定軟件的開發目的及可行性。制定開發計劃
1
2. 需求分析
對軟件需要實現的各個功能進行詳細分析,弄清楚用戶對軟件系統的全部需求,
要產出《需求規格說明書》。
1
2
比如:登陸這個功能要支持手機快速登錄和第三方賬號登錄

3. 軟件設計
把需求分析結果轉換成軟件結構和數據結構,形成系統架構。(明確“怎麽做”)
1
· · · 概要設計:
主要是架構的實現,指搭建架構、表述各模塊功能、模塊接口連接和數據傳遞的實現等事務。
比如:要建一棟樓,架構師首先要做好整體規劃,要建多少層,外觀是怎樣之類的,然後拆分功能模塊。

· · · 詳細設計:
對各模塊進行深入分析,對各模塊組合進行分析等,這一階段要求達到偽代碼級別,把程序具體要實現的功能、現象等描述出來,其中包含數據庫設計說明。
比如:架構師規劃好後,開發拿著打散的模塊,再落實到每一個樓層,每一個房間,房間裏的每件物品等

4. 軟件編碼
按照詳細設計好的模塊功能表,編程人員開始編寫代碼
1
5. 軟件測試
在軟件編寫完成後要經過嚴密的測試,以發現問題並加以糾正。主要有黑盒測試和白盒測試。
1
· · · 單元測試:
主要是測試程序代碼,為的是確保各單元模塊被正常編譯。有具體到模塊的測試,也有具體到類、函數的測試等。——一般是由開發來完成

· · · 集成測試:
單元測試後,將各單元組成完整的體系,測試軟件單位之間的接口是否正確,數據能否正常傳遞。——比如註冊和充值這兩個功能能否連通

· · · 系統測試:
把軟件系統搭建起來,按照《軟件規格說明書》中的要求對各項功能進行測試,看是否符合需求、在系統運行是否存在漏洞等——根據測試用例,進行完整的系統測試

· · · 驗收測試:
客戶拿到軟件後,根據前面所提的需求以及《規格說明書》來做相應的測試,已確定軟件是否符合需求效果——用戶對軟件進行驗收
(單元測試、集成測試、系統測試之間的區別:句子—段落—文章;磚—墻—樓)

6. 運行維護
是生命周期中持續時間最長的階段,為了延長軟件的使用壽命,適應用戶需求,就必須
對軟件進行維護。包括糾錯性維護和改進性維護。
1
2
三、軟件模型
V模型結構圖(各個階段相對應)

四、軟件測試的基本流程
需求分析階段:

閱讀需求,理解需求,主要就是對業務的學習,分析需求點
1
計劃階段:

主要任務是編寫測試計劃,參考軟件需求規格說明書,項目總體計劃,測試範圍,進度安排,
人力物力的分配,整體測試策略的指定,和風險的評估與規避措施有一個指定,一般有測試
主管編寫,當然我們也會參與相關的評審工作。
1
2
3
設計階段:

主要任務是編寫測試用例,會參考需求分析、概要設計、詳細設計等文檔,有不明確的也
會及時和開發、產品經理溝通。用例編寫完成後會進行評審。
1
2
執行階段:

首先搭建測試環境,執行預測,以判定當前版本可測與否,如果預測通過,正式進入系統
測試,遇到問題提交bug到缺陷管理平臺,並對bug進行跟蹤,知道被測軟件達到測試需求
要求,沒有重大bug,測試結束。
1
2
3
評估階段:

出測試報告,對整個測試的過程和版本質量做一個詳細的評估。
1


五、軟件開發流程、測試流程梳理
開發流程:

需求分析
概要設計、詳細設計
編寫代碼
單元測試
代碼審查
集成測試
打包提交測試部
等待測試提交BUG
修復BUG
等待測試回歸BUG
N輪之後符合需求
版本上線
面向用戶使用
1
2
3
4
5
6
7
8
9
10
11
12
13
測試流程:

需求分析
編寫測試用例
評審測試用例
搭建測試環境
等待開發提交測試包
部署測試包
冒煙測試(主體功能預測)
執行測試用例
BUG跟蹤處理(提交及回歸BUG)
N輪之後符合需求
版本上線
面向用戶使用
1
2
3
4
5
6
7
8
9
10
11
12
六、C/S與B/S架構
C/S架構:
client-server,需要安裝客戶端才能夠使用的軟件。每次更新都需要更新服務端和客戶端,比如超市收銀系統,每次更新每臺電腦都必須重裝客戶端,有分店則更麻煩,人力物力財力都耗費很大。

B/S架構:
browser-server,只需要一個瀏覽器就可以訪問服務。只需要更新服務端,不需要更新瀏覽器,用戶主動性較高。比如天貓、淘寶、QQ、愛奇藝等。

七、軟件測試行業的理解
根據大家自己的見解,說說大家認為軟件測試這個職業的理解以及發展

1.容易入門,不局限是計算機專業的。

2.企業對軟件測試人員有大量需求,特別是功能測試工程師的需求。

3.鼠標點點點是初級功能測試工程師局限的工作內容,不僅於此。我們軟件測試是分很多
種的:自動化測試,性能測試,白盒測試,安全測試。

4.產品團隊一般組成:項目經理、產品、開發(前端、後端、移動端)、測試、UI設計。
大一點的企業還包括:DBA(數據庫工程師)、架構師、運維、運營。
測試的主要溝通對象:開發、產品經理、測試經理、研發經理。

5.測試人員的發展:功能測試工程-->自身測試工程師
功能測試工程師-->管理崗
1
2
3
4
5
6
7
8
9
10
11
12
13
八、常見筆試面試題
1.生命周期模型包含哪些階段?你們的開發模型是什麽?
答:軟件生命周期包含問題的定義及規劃、 需求分析、 軟件設計、軟件編碼、軟件測試、
運行維護等階段。我們公司目前使用的是V模型。
1
2
2.測試流程包含哪些階段?
答:測試流程包含需求分析階段、計劃階段、設計階段、執行階段、評估階段等階段。
1
3.總結下開發流程?
答:需求分析——概要設計、詳細設計——編寫代碼——單元測試——代碼審查——集成測試——打包提交
測試部——等待測試提交BUG——修復BUG——等待測試回歸BUG——N輪之後符合需求——版本上線
——面向用戶使用
1
2
3
4.總結下測試流程?
答:需求分析——編寫測試用例——評審測試用例——搭建測試環境——等待開發提交測試包——部署測試包
——冒煙測試(主體功能預測)——執行測試用例——BUG跟蹤處理(提交及回歸BUG)——N輪之後符合需
求——版本上線——面向用戶使用
---------------------
作者:ChaosMax
來源:CSDN
原文:https://blog.csdn.net/ChaosMax/article/details/71628867
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

軟件測試的生命周期&測試流程