什么是測試計劃?
測試計劃是一份詳細的文檔,概述了測試策略, 測試目標,測試所需的資源(人力,軟件,硬件),測試計劃, 測試評估和測試可交付成果。
測試計劃作為一個藍圖,將軟件測試活動作為一個定義的過程進行,由測試經(jīng)理進行細致的監(jiān)控和控制。

讓我們從以下場景開始

測試計劃的重要性
制定測試計劃有多重好處
- 測試計劃幫助我們確定驗證被測應(yīng)用程序質(zhì)量所需的工作量
- 幫助測試團隊以外的人員,如開發(fā)人員,業(yè)務(wù)經(jīng)理,客戶了解測試的詳細信息。
- 測試計劃指導(dǎo)我們的思考。 它就像一本規(guī)則書,需要遵循。
- 測試計劃中記錄了測試評估,測試范圍, 測試策略等重要方面,因此管理團隊可以對其進行審核并重新用于其他項目。
參考資料
- python測試開發(fā)項目實戰(zhàn)-目錄
- python工具書籍下載-持續(xù)更新
- python 3.7極速入門教程 - 目錄
- 討論qq群630011153 144081101
- 原文地址
- 本文涉及的python測試開發(fā)庫 謝謝點贊!
- 本文相關(guān)海量書籍下載
如何編寫測試計劃
您已經(jīng)知道制定測試計劃是測試管理流程中最重要的任務(wù)。 按照以下七個步驟創(chuàng)建符合IEEE 829的測試計劃
- 分析產(chǎn)品
- 設(shè)計測試策略
- 定義測試目標
- 定義測試標準
- 資源規(guī)劃
- 計劃測試環(huán)境
- 時間表和估算
- 確定測試可交付成果

步驟1)分析產(chǎn)品
如何在沒有任何相關(guān)信息的情況下測試產(chǎn)品? 答案是不可能的。 在測試之前,您必須徹底學(xué)習(xí)產(chǎn)品。
被測產(chǎn)品是Guru99銀行網(wǎng)站。 您應(yīng)該研究客戶和最終用戶,以了解他們對應(yīng)用程序的需求和期望
- 誰將使用該網(wǎng)站?
- 干什么用的?
- 如何運作?
- 產(chǎn)品使用的軟件/硬件?
您可以使用以下方法來分析站點

現(xiàn)在讓我們將以上知識應(yīng)用于真實產(chǎn)品: 分析銀行網(wǎng)站http://demo.guru99.com/V4 。
您應(yīng)該瀏覽一下本網(wǎng)站并查看 產(chǎn)品文檔 。 查看產(chǎn)品文檔可幫助您了解網(wǎng)站的所有功能以及如何使用它。 如果您不清楚任何項目,您可以采訪客戶,開發(fā)人員,設(shè)計師以獲取更多信息。
步驟2)制定測試策略
測試策略是制定測試計劃的關(guān)鍵步驟 。 測試策略文檔是一個高級文檔,通常由測試經(jīng)理開發(fā)。 本文件定義:
- 該項目的測試目標和實現(xiàn)它們的手段
- 確定測試工作量和成本
回到您的項目,您需要開發(fā)測試策略來測試該銀行網(wǎng)站。 您應(yīng)該按照以下步驟操作

步驟2.1)定義測試范圍
在任何測試活動開始之前,應(yīng)該知道測試的范圍。 你必須認真思考它。
- 要測試的系統(tǒng)組件(硬件,軟件,中間件等)被定義為“ 范圍內(nèi) ”
- 未經(jīng)測試的系統(tǒng)組件也需要明確定義為“ 超出范圍” 。
定義測試項目的范圍對所有利益相關(guān)者都非常重要。 精確的范圍可以幫助您
- 讓每個人都對您正在進行的測試充滿信心和準確信息
- 所有項目成員都將清楚地了解測試內(nèi)容和不測試內(nèi)容
您如何確定項目的范圍?
要確定范圍,您必須 -
- 精確的客戶要求
- 項目預(yù)算
- 產(chǎn)品規(guī)格
- 測試團隊的技能和才能
現(xiàn)在應(yīng)該明確定義測試的“范圍內(nèi)”和“范圍外”。
- 作為軟件需求規(guī)格 ,項目Guru99 Bank只專注于測試網(wǎng)站Guru99 Bank的所有功能和外部接口( 在范圍測試中)
- 目前不會測試非壓力測試,如壓力 , 性能或邏輯數(shù)據(jù)庫 。 ( 超出范圍)
問題場景
客戶希望您測試他的API。 但項目預(yù)算不允許這樣做。 在這種情況下你會做什么?
那么,在這種情況下,您需要說服客戶Api測試是額外的工作,并將消耗大量資源。 給他支持你事實的數(shù)據(jù)。 告訴他如果Api測試包含在范圍內(nèi),預(yù)算將增加XYZ金額。
客戶同意,因此新范圍超出范圍項目
- 范圍內(nèi)項目: 功能測試 ,Api測試
- 超出范圍的項目: 數(shù)據(jù)庫測試 ,硬件和任何其他外部接口
步驟2.2)確定測試類型
測試類型是一種標準測試程序,可提供預(yù)期的測試結(jié)果。
每種測試類型都是為了識別特定類型的產(chǎn)品錯誤而制定的。 但是,所有測試類型都旨在實現(xiàn)一個共同目標“在向客戶發(fā)布產(chǎn)品之前及早發(fā)現(xiàn)所有缺陷”
常用的測試類型如下圖所示

測試軟件產(chǎn)品有大量的測試類型 。 您的團隊無法完成所有類型的測試。 作為測試管理員,您必須設(shè)置測試類型的優(yōu)先級
- 應(yīng)該針對Web應(yīng)用程序測試關(guān)注哪些測試類型?
- 為節(jié)省成本,應(yīng)忽略哪些測試類型?
步驟2.3)文檔風(fēng)險和問題
風(fēng)險是未來的不確定事件 ,具有發(fā)生概率和潛在損失。 當(dāng)風(fēng)險實際發(fā)生時,它就成了“ 問題”。
在風(fēng)險分析和解決方案的文章中,您已經(jīng)詳細了解了“風(fēng)險”分析,并確定了項目中的潛在風(fēng)險。
在QA測試計劃中,您將記錄這些風(fēng)險
| 風(fēng)險 | 減輕 |
|---|---|
| 團隊成員缺乏網(wǎng)站測試所需的技能。 | 計劃培訓(xùn)課程,以培養(yǎng)您的成員 |
| 項目進度太緊; 按時完成這個項目很難 | 為每個測試活動設(shè)置測試優(yōu)先級 。 |
| 測試經(jīng)理的管理技巧很差 | 為經(jīng)理規(guī)劃領(lǐng)導(dǎo)力培訓(xùn) |
| 缺乏合作會對員工的工作效率產(chǎn)生負面影響 | 鼓勵每個團隊成員完成任務(wù), 并激勵他們做出更大的努力。 |
| 錯誤的預(yù)算估算和成本超支 | 在開始工作之前確定范圍 ,注重項目計劃并不斷跟蹤和衡量進度 |
在Test Logistics中,測試經(jīng)理應(yīng)回答以下問題:
- 誰來測試?
- 測試何時進行?
可能不知道將要測試的測試人員的確切名稱,但可以定義測試人員的類型 。
要為指定任務(wù)選擇正確的成員,您必須考慮他的技能是否符合任務(wù)要求,還要估算項目預(yù)算。 為任務(wù)選擇錯誤的成員可能會導(dǎo)致項目失敗或延遲 。
具有以下技能的人員最適合進行軟件測試:
- 能夠理解客戶的觀點
- 對質(zhì)量的強烈渴望
- 注重細節(jié)
- 良好的合作
在您的項目中,負責(zé)測試執(zhí)行的成員是測試人員。 根據(jù)項目預(yù)算,您可以選擇內(nèi)部或外包成員作為測試人員。
測試何時進行?
測試活動必須與相關(guān)的開發(fā)活動相匹配。
當(dāng)您擁有下圖所示的所有必需物品時,您將開始測試

步驟3)定義測試目標
測試目標是測試執(zhí)行的總體目標和成就。 測試的目的是找到盡可能多的軟件缺陷; 在發(fā)布之前確保被測軟件沒有錯誤 。
要定義測試目標,您應(yīng)該執(zhí)行以下兩個步驟
- 列出可能需要測試的所有軟件功能(功能,性能,GUI ...)。
- 根據(jù)上述功能定義測試的目標或目標
讓我們應(yīng)用這些步驟來找到Guru99 Bank測試項目的測試目標
您可以選擇“ TOP-DOWN”方法來查找可能需要測試的網(wǎng)站功能。 在此方法中,您將測試中的應(yīng)用程序分解為組件和子組件 。
在上一個主題中,您已經(jīng)分析了需求規(guī)范并瀏覽了網(wǎng)站,因此您可以創(chuàng)建一個思維導(dǎo)圖來查找網(wǎng)站功能如下

此圖顯示了Guru99網(wǎng)站可能具有的所有功能。
基于以上功能,您可以將項目Guru99的測試目標定義如下
- 檢查網(wǎng)站Guru99 功能 (帳戶,存款...)是否按預(yù)期工作,沒有任何錯誤或?qū)嶋H商業(yè)環(huán)境中的錯誤
- 檢查網(wǎng)站的外部界面(如UI)是否按預(yù)期工作,并滿足客戶需求
- 驗證網(wǎng)站的可用性 。 這些功能對用戶是否方便?
步驟4)定義測試標準
測試標準是測試程序或測試判斷可以基于的標準或規(guī)則。 以下有兩種測試標準
暫停標準:指定測試的關(guān)鍵暫停標準。 如果在測試期間滿足暫停標準,則將暫?;顒訙y試循環(huán),直到標準得到解決 。
示例:如果您的團隊成員報告有40%的測試用例失敗,則應(yīng)暫停測試,直到開發(fā)團隊修復(fù)所有失敗的案例。

退出標準:它指定了表示成功完成測試階段的標準。 退出標準是測試的目標結(jié)果,在進入下一個開發(fā)階段之前是必要的。 示例: 95%的關(guān)鍵測試用例必須通過。
定義退出標準的一些方法是指定目標運行率和通過率 。
- 運行率是執(zhí)行的測試用例數(shù)/測試規(guī)范的總測試用例之間的比率。 例如,測試規(guī)格總共有120個TC,但測試儀只執(zhí)行了100個TC,因此運行速率為100/120 = 0.83(83%)
- 通過率是通過測試用例/測試用例執(zhí)行的 數(shù)字之間的比率。 例如,在執(zhí)行的100個TC中,有80個TC通過,因此通過率為80/100 = 0.8(80%)
可以在Test Metric文檔中檢索此數(shù)據(jù)。
- 除非有明確的理由,否則運行率必須為100% 。
- 通過率取決于項目范圍,但實現(xiàn)高通過率是一個目標。
示例:您的團隊已經(jīng)完成了測試執(zhí)行。 他們向您報告測試結(jié)果,他們希望您確認退出標準。
在上述情況下,運行率是強制性的是100%,但測試團隊只完成了90%的測試用例。 這意味著不滿足運行速率,因此不要確認退出標準。

步驟5)資源計劃
資源計劃是完成項目任務(wù)所需的所有類型資源的詳細摘要 。 資源可以是完成項目所需的人力,設(shè)備和材料
資源規(guī)劃是測試計劃的重要因素,因為它有助于確定要用于項目的資源(員工,設(shè)備......)的數(shù)量 。 因此,測試經(jīng)理可以為項目制定正確的計劃和估算。
此部分表示項目的建議資源。
人力資源
下表顯示了項目團隊中的各種成員
| 角色 | 任務(wù) |
|---|---|
| 測試經(jīng)理 | 管理整個項目 定義項目方向 獲取適當(dāng)?shù)馁Y源 |
| 測試員 | 識別和描述適當(dāng)?shù)臏y試技術(shù)/工具/自動化架構(gòu) 驗證并評估測試方法 執(zhí)行測試, 記錄結(jié)果, 報告缺陷。 根據(jù)項目預(yù)算,測試人員可以是內(nèi)部成員或外包成員 對于需要低技能的任務(wù),我建議您選擇外包成員以節(jié)省項目成本。 |
| 測試開發(fā)人員 | 實現(xiàn)測試用例,測試程序,測試套件等。 |
測試管理員| 構(gòu)建并確保管理和維護 測試環(huán)境和資產(chǎn) 支持 Tester使用測試環(huán)境進行測試執(zhí)行
SQA成員| 負責(zé)質(zhì)量保證 檢查以確認測試過程是否符合指定要求 |
系統(tǒng)資源
對于Web應(yīng)用程序的測試,您應(yīng)該按以下表規(guī)劃資源:
| 資源 | 說明 |
|---|---|
| 服務(wù)器 | 安裝正在測試的Web應(yīng)用程序 這包括單獨的Web服務(wù)器,數(shù)據(jù)庫服務(wù)器和應(yīng)用程序服務(wù)器(如果適用) |
| 測試工具 | 自動化測試,模擬用戶操作,生成測試結(jié)果 您可以為此項目使用大量測試工具,例如Selenium,QTP等。 |
| 網(wǎng)絡(luò) | 包含LAN和Internet的網(wǎng)絡(luò)來模擬真實的業(yè)務(wù)和用戶環(huán)境 |
| 電腦 | 用戶經(jīng)常用來連接Web服務(wù)器的PC |
步驟6)規(guī)劃測試環(huán)境
測試環(huán)境是測試團隊將要執(zhí)行測試用例的軟件和硬件設(shè)置。 測試環(huán)境包括真實的業(yè)務(wù)和用戶環(huán)境,以及物理環(huán)境,如服務(wù)器,前端運行環(huán)境。

你如何為這個銀行網(wǎng)站設(shè)置測試環(huán)境 ?
要完成此任務(wù),您需要測試團隊和開發(fā)團隊之間的密切合作。您應(yīng)該向開發(fā)人員詢問一些問題,以便清楚地了解測試中的Web應(yīng)用程序。 這是一些推薦的問題。 當(dāng)然,如果需要,您可以詢問其他問題。
- 這個網(wǎng)站可以同時處理的最大用戶連接是什么?
- 安裝本網(wǎng)站有哪些硬件/軟件要求?
- 用戶的計算機是否需要任何特定設(shè)置才能瀏覽網(wǎng)站?
下圖描述了銀行網(wǎng)站www.demo.guru99.com/V4的測試環(huán)境

步驟7)時間表和估計
在測試評估一文中 ,您已經(jīng)使用了一些技術(shù)來估算完成項目的工作量。 現(xiàn)在,您應(yīng)該將該估算以及計劃納入測試計劃
在測試估算階段,假設(shè)您將整個項目分解為小任務(wù),并為每個任務(wù)添加估算,如下所示
| 任務(wù) | 成員 | 耗時 |
|---|---|---|
| 創(chuàng)建測試規(guī)范 | 測試設(shè)計師 | 170個工時 |
| 執(zhí)行測試執(zhí)行 | 測試員,測試管理員 | 80個工時 |
| 測試報告 | 測試員 | 10個工時 |
| 測試交付 | 20個工時 | |
| 總 | 280工時 |
然后,您創(chuàng)建計劃以完成這些任務(wù)。
制定時間表是項目管理中的常用術(shù)語。 通過在測試計劃中創(chuàng)建可靠的計劃,測試經(jīng)理可以將其用作監(jiān)視項目進度的工具,控制成本超支。
要創(chuàng)建項目計劃,測試管理器需要幾種類型的輸入,如下所示:
- 員工和項目截止日期 :工作日,項目截止日期,資源可用性是影響計劃的因素
- 項目估算 :根據(jù)估算,測試經(jīng)理知道完成項目需要多長時間。 所以他可以制定適當(dāng)?shù)捻椖窟M度表
- 項目風(fēng)險 :了解風(fēng)險有助于測試經(jīng)理為項目進度計劃添加足夠的額外時間來處理風(fēng)險
讓我們練習(xí)一個例子:
假設(shè)老板想在一個月內(nèi)完成項目Guru99,你已經(jīng)估計了測試估算中每項任務(wù)的工作量。 您可以按如下方式創(chuàng)建計劃

步驟8)測試可交付成果
Test Deliverables是必須開發(fā)和維護的所有文檔,工具和其他組件的列表,以支持測試工作。
在軟件開發(fā)生命周期的每個階段都有不同的測試可交付成果。

在測試階段之前提供測試可交付成果。
- 測試計劃文件。
- 測試用例文檔
- 測試設(shè)計規(guī)范。
測試期間提供測試可交付成果
- 測試腳本
- 模擬器。
- 測試數(shù)據(jù)
- 測試可追溯性矩陣
- 錯誤日志和執(zhí)行日志。
測試周期結(jié)束后提供測試可交付成果。
- 測試結(jié)果/報告
- 缺陷報告
- 安裝/測試程序指南
- 發(fā)行說明