軟件測試流程規劃
一、引言
本文檔規范了軟件測試過程中的整體流程,明確了軟件測試從開始到結束的各個階段,以及在各階段中的負責人、具體工作內容和必需的輸入輸出文檔。另外,本文還介紹了各測試階段需要的測試工具、測試點和測試步驟,并提供了各類測試文檔的參考模板。
二、測試流程概述
1、流程介紹
一般來講,軟件測試是伴隨著項目的立項而開始的。也就是說,軟件項目一旦確立,測試工作也就開始了。在測試的過程中,前后要經過以下主要環節:
需求分析—>制定測試計劃—>搭建測試環境—>測試用例設計—>測試執行—>BUG回歸測試—>測試總結—>軟件發布
對于以上流程環節,一般而言,需求分析屬于需求分析人員的工作范疇,環境搭建、用例設計、測試執行以及回歸測試等屬于測試人員的工作范疇,測試負責人負責制定測試計劃以及對各個環節的跟蹤、實施、管理等。
2、流程圖
項目開始
需求階段
測試計劃
測試階段
用戶界面測試
兼容性測試
安全性測試
測試總結
軟件發布
三、需求階段
在這個階段,主要是對于需求的收集、分析以及評估。
1.由需求分析人員統一收集需求,并整理成文檔格式轉發給項目經理、開發經理和測試經理;
2.項目經理召集開發經理、測試經理和需求分析人員進行會議討論,了解具體每個需求的實際含義,并且明確各需求的有效性和可用性;
3.小組會議討論,確定最終實現的需求和功能點,并整理出重點需求;
4.項目經理根據會議討論結果編寫需求說明,并且再次召集小組開會討論,對需求說明進行修復、完善,并最終確定《需求規格說明書》。
負責人:項目經理
輸入文檔:需求說明文檔
輸出文檔:《需求規格說明書》
四、測試計劃階段
作為測試的起始步驟和重要環節,測試計劃是對測試全過程的組織、資源、原則等進行規定和約束,并制定測試全過程各個階段的任務以及時間進度安排,并提出對各項任務的評估、風險分析和管理需求。用一句話概括就是:測試計劃是從管理角度對整個測試活動進行規劃和控制。
測試計劃的主要內容可分以下幾個方面:
1.測試概述(介紹項目測試的范圍、目的以及組織形式)
2.測試進度(測試時間周期的安排)
3.測試策略(包括測試環境、測試工具及測試方法)
4.需求跟蹤(確定系統測試項與需求之間的對應關系)
5.測試通過失敗標準(指明測試何時通過何時結束)
6.測試掛起恢復標準(指明當測試過程無法進行下去時測試活動掛起以及恢復的標準)
7.資源分配(工作量的統計以及工作任務的安排)
8.應交付測試工作產品(明確測試需要提交的各類工作文檔)
9.風險評估(預估測試存在的風險)
測試經理根據項目的總體進度、發布時間以及需求規格說明、開發計劃制定相應的測試計劃,完成后提交給項目經理。項目經理組織討論會,連同開發經理、測試經理以及各模塊負責人,對測試計劃進行評審并確定。
負責人:測試經理
輸入文檔:《需求規格說明書》、《軟件開發計劃》
輸出文檔:《軟件測試計劃》
五、測試階段
測試階段按照不同的測試要求可分為以下幾點:
· 功能測試
· 性能測試
· 用戶界面測試
· 系統兼容性測試
· 系統安全性測試
· 系統接口測試
負責人:測試工程師
輸入文檔:《需求規格說明書》、《軟件測試計劃》、《軟件設計文檔》
輸出文檔:《***測試用例》、《***缺陷報告》、《***測試報告》
1、測試前提條件
當研發部門完成了軟件項目的開發任務之后,軟件產品開始進入測試環節。在開發人員提交測試之前,需要遵守測試的前提條件,如果沒有限定測試前的前提條件,測試人員需要花費大量的時間去完成一些簡單的并且很容易發現的錯誤,這樣會造成很大的人員浪費。因此,對于開發部門提交給測試部門的軟件產品,除領導親自特批外,均必須滿足以下條件才允許提交:
(1)開發部門完成軟件的白盒測試。
(2)開發部門完成軟件的冒煙測試。
(3)必須提供軟件產品的需求文檔以及軟件開發的設計文檔(包括概設和詳設文檔)。
(4)對于新增功能,必須提供功能列表、功能詳細說明、流程明細以及關聯的模塊;對于修改功能,必須提供修改功能列表、具體修改內容以及影響的模塊。
(5)對于沒有完成的功能,不能提交測試,必須在代碼中注釋掉。
(6)對于需要與其他系統進行集成測試的軟件,需要明確測試環境以及參數的配置,并且詳細說明系統間具體是如何集成的。
(7)對于需要進行性能測試的部分,提供詳細說明以及需要達到的各項性能指標。
2、系統功能測試
2.1測試工具
主要采用手工測試,但對于重復性功能點的測試可采用QuickTest Professional作為自動化測試工具。另外,使用公司Dynamix系統作為測試用例和BUG管理工具。
2.2測試點
2.2.1鏈接測試
鏈接是Web應用系統的一個主要特征,它是在頁面之間切換和指導用戶去一些不知道地址的頁面的主要手段。鏈接測試可分為三個方面。首先,測試所有鏈接是否按指示的那樣確實鏈接到了該鏈接的頁面;其次,測試所鏈接的頁面是否存在;最后,測試web應用系統上是否有孤立的頁面。
2.2.2表單測試
當用戶給Web應用系統管理員提交信息時,就需要使用表單操作,例如:用戶注冊、登陸、信息提交等。在這種情況下,我們必須測試提交操作的完整性,以校驗提交給服務器的信息的正確性,例如:用戶填寫的出生日期與職業是否恰當,填寫的所屬省份與所在的城市是否匹配等。如果使用了默認值,還要校驗默認值得正確性。如果表單只能接受指定的某些值,則也要進行測試。如:只能接受某些字符,測試時可以跳過這些字符,看系統是否會報錯。
2.2.3 Cookie測試
如果Web應用系統使用了Cookies,就必須檢查Cookies是否能正常工作。測試的內容可包括Cookies是否起作用,是否按預定的時間進行保存,刷新對Cookies有什么影響等。
2.2.4數據校驗測試
如果系統中根據業務規則需要對用戶的輸入進行校驗,那么就必須要保證這些校驗功能正常工作。例如,省份的字段可以用一個有效列表進行校驗。在這種情況下,需要驗證列表完整而且程序正確調用了該列表(例如在列表中添加一個測試值,確定系統能夠接受這個測試值)。
2.2.5程序功能點的測試
嘗試用戶的所有操作,這是用戶之所以使用網站的原因,必須確保:
1、各個功能點是否能正確使用;
2、流程是否能正常運轉。
2.3測試步驟
2.3.1測試環境的搭建
根據實際情況,搭建相應的測試環境,包括軟件環境和硬件環境。
2.3.2用例設計
測試工程師根據“需求規格說明書”、“測試計劃”以及開發提供的“軟件設計文檔”來設計各個模塊以及功能點的測試用例,完成后提交給測試經理。測試經理組織各模塊開發以及測試人員進行開會討論,評估設計好的測試用例。
2.3.3測試執行
在這一階段,測試工程師對之前設計好的測試用例進行執行操作,找出系統軟件的BUG并且提交給開發人員進行修復。
2.3.4回歸測試
測試工程師對于那些已被開發修復的BUG,做回歸測試以驗證其是否得到正確修復。確認修復的,就將BUG關閉,否則重新提交給開發人員修復。
回歸測試需要注意一下兩點:
1.BUG是否得到正確修復;
2.是否引入了新的BUG。
2.4測試報告
測試工程師對功能測試結果進行總結分析,完成《功能測試報告》。
3、系統性能測試
性能測試是測試過程中不可或缺的一個環節,它是通過自動化的測試工具模擬多種正常、峰值以及異常條件來對系統的各項性能指標進行測試。
版權聲明:本文出自 Giant321 的51Testing軟件測試博客:http://www.51testing.com/?506499
原創作品,轉載時請務必以超鏈接形式標明本文原始出處、作者信息和本聲明,否則將追究法律責任。
posted on 2014-01-02 09:45 順其自然EVO 閱讀(270) 評論(0) 編輯 收藏 所屬分類: 測試學習專欄