# 一份有效的軟件測試計劃要怎么寫?
測試計劃(software test plan)是軟件測試員和產品開發小組交流及完成指標的主要表達方式。測試計劃的目的是:規定測試活動的范圍、方法、資源和進度。明確正在測試的項目、要測試的特性、要執行的測試任務、每個任務的負責人,以及與計劃相關的風險。最終提高測試的工作效率,保障測試工作順利、保質保量完成測試工作。
簡單的來說測試計劃就是用來
1)明確工作內容
2)計劃工作完成時間
3)分配工作資源
4)預估工作風險
測試管理者根據自身實際情況的項目、團隊管理情況,合適的測試計劃文檔模塊編寫測試工作的測試計劃、便于向項目中的其它成員告知測試工作是如何安排和進行工作。在執行測試時都要執行的測試用例點有哪些?具體在寫測試計劃中,哪些信息是需要考慮的,哪些東西是不需要考慮的,可以根據自己項目的具體情況進行增減安排和設計即可。
那么,一份有效的軟件測試計劃要怎么寫?主要包括以下:
**01期望**
a.讓整個項目組成員,包括測試人員,開發人員,技術文檔作者,管理部門等,了解、同意以及支持制定的項目測試計劃過程;
b.具體測試的是什么產品,該產品只是版本升級還是重新開發?
c.產品的質量和可靠性目標是什么?產品達到什么程度就可以說是達到目標了?在制定測試計劃時,必須清晰,簡潔,且在產品質量和可靠性目標上項目組相關人員意見達成一致。
**02人/地點/事情**
a.測試計劃應該包括項目中所有主要人員的姓名,職務,地址,電話號碼,電子郵箱和職責范圍;
b.項目進行中,相關文檔存放的位置,測試工具的位置等;
c.測試中,使用到硬件,軟件等,從哪里可以得到?
**03定義**
a.什么才屬于軟件缺陷?需要項目全部成員達成一致。(軟件未實現產品說明書要求的功能;軟件中出現了產品說明書指明不應該出現的錯誤;軟件實現了產品說明書中未提到的功能;軟件未實現產品說明書雖未明確提及但應該實現的目標)
**04團隊之間的責任**
項目管理(QM),測試人員,開發人員,測試經理,開發經理,項目經理,項目質量(QA)等,明確指出相關人員的責任,避免項目中出現“三不管”地帶,可借助表格列出相關責任.
**05哪些要測試,哪些不要測試**
通常項目中包含一些內容不必測試,這些內容包括以前發布過或者不是項目組負責的,需要驗證軟件的每一部分,確定它是否要測試;若沒有測試,需說明這樣做的理由
**06測試的階段**
根據開發模式制定每一個階段的測試情況,需要明確每一個預定的測試階段,并告知項目小組,有助于整個小組形成和了解全部開發模式;測試人員的進入和退出規則
**07測試策略**
主要描述測試小組用于測試整體和每個階段的方法,如,需要決定使用黑盒測試,還是白盒測試,手工測試還是進行自動化測試等。決定測試策略需要由經驗相當豐富的測試員來做。
**08資源需求**
人員,設備,辦公室和實驗室空間,軟件,其它設備等
**09任務分配**
明確測試員負責軟件的哪些部分,哪些可測試特性,確保軟件的每一部分都分配有人測試,每一個測試員會清楚地知道自己負責什么,有足夠的信息開始設計測試用例。
**10進度安排**
進行測試進度安排,可以為項目組人員,項目經理提供信息,以便更好的安排整個項目的進度;其中會出現“進度破壞”的情況,此時測試進度可采用相對日期的方法,依賴于其它先完成的可交付內容。
**11軟件缺陷報告**
使用什么方式記錄缺陷,從發現到修復的過程中如何去跟蹤?
**12度量和統計**
需明確收集哪些信息,要做什么決定,誰來負責收集,如:
a.在項目期間每天發現的軟件缺陷總數
b.待修復的缺陷清單
c.當前軟件的缺陷嚴重程度分布
d.測試人員找出的軟件缺陷總數
e.缺陷發布的趨勢和區域
**13風險和問題**
明確指出項目潛在問題或者風險區域,并在計劃中進行列出,在進度中給予說明。
最后注意的是,測試計劃不是一成不變的,隨著項目的進行,會由于各方面的因素(如:提交測試的程序版本質量低、bug量大修改慢、需求變更等等)導致測試計劃無法按原計劃執行,這時要適當的調整測試計劃。
- 第一章-測試理論
- 1.1軟件測試的概念
- 1.2測試的分類
- 1.3軟件測試的流程
- 1.4黑盒測試的方法
- 1.5AxureRP的使用
- 1.6xmind,截圖工具的使用
- 1.7測試計劃
- 1.8測試用例
- 1.9測試報告
- 2.0 正交表附錄
- 第二章-缺陷管理工具
- 2.1缺陷的內容
- 2.2書寫規范
- 2.3缺陷的優先級
- 2.4缺陷的生命周期
- 2.5缺陷管理工具簡介
- 2.6缺陷管理工具部署及使用
- 2.7軟件測試基礎面試
- 第三章-數據庫
- 3.1 SQL Server簡介及安裝
- 3.2 SQL Server示例數據庫
- 3.3 SQL Server 加載示例
- 3.3 SQL Server 中的數據類型
- 3.4 SQL Server 數據定義語言DDL
- 3.5 SQL Server 修改數據
- 3.6 SQL Server 查詢數據
- 3.7 SQL Server 連表
- 3.8 SQL Server 數據分組
- 3.9 SQL Server 子查詢
- 3.10.1 SQL Server 集合操作符
- 3.10.2 SQL Server聚合函數
- 3.10.3 SQL Server 日期函數
- 3.10.4 SQL Server 字符串函數
- 第四章-linux
- 第五章-接口測試
- 5.1 postman 接口測試簡介
- 5.2 postman 安裝
- 5.3 postman 創建請求及發送請求
- 5.4 postman 菜單及設置
- 5.5 postman New菜單功能介紹
- 5.6 postman 常用的斷言
- 5.7 請求前腳本
- 5.8 fiddler網絡基礎及fiddler簡介
- 5.9 fiddler原理及使用
- 5.10 fiddler 實例
- 5.11 Ant 介紹
- 5.12 Ant 環境搭建
- 5.13 Jmeter 簡介
- 5.14 Jmeter 環境搭建
- 5.15 jmeter 初識
- 5.16 jmeter SOAP/XML-RPC Request
- 5.17 jmeter HTTP請求
- 5.18 jmeter JDBC Request
- 5.19 jmeter元件的作用域與執行順序
- 5.20 jmeter 定時器
- 5.21 jmeter 斷言
- 5.22 jmeter 邏輯控制器
- 5.23 jmeter 常用函數
- 5.24 soapUI概述
- 5.25 SoapUI 斷言
- 5.26 soapUI數據源及參數化
- 5.27 SoapUI模擬REST MockService
- 5.28 Jenkins的部署與配置
- 5.29 Jmeter+Ant+Jenkins 搭建
- 5.30 jmeter腳本錄制
- 5.31 badboy常見的問題
- 第六章-性能測試
- 6.1 性能測試理論
- 6.2 性能測試及LoadRunner簡介
- 第七章-UI自動化
- 第八章-Maven
- 第九章-測試框架
- 第十章-移動測試
- 10.1 移動測試點及測試流程
- 10.2 移動測試分類及特點
- 10.3 ADB命令及Monkey使用
- 10.4 MonkeyRunner使用
- 10.5 appium工作原理及使用
- 10.6 Appium環境搭建(Java版)
- 10.7 Appium常用函數(Java版)
- 10.8 Appium常用函數(Python版)
- 10.9 兼容性測試