一.什么是測試策略
簡單來說就是,測什么,怎么測。
一般可以歸納為6個問題
1)測試的對象和范圍是什么?
2)測試的目標是什么?
3)測試的深度到哪里,廣度又到哪里?
4)測試的重點有什么?難點又有什么?
5)如何安排測試活動
6)如何評價,評審測試是否有效?
二.什么是測試方針
測試方針可以理解為測試活動中的一些通用的要求,原則。
如:1)產品的缺陷修復率要達到90%以上才能發布。
2)開發提交版本前,必須要先自測,比產出測試報告。
3)對發布的版本,無論代碼修改了多少,都要對基本功能進行回歸測試。
4)產品升級后,發型原有功能丟失或失效的,這類缺陷都定義為嚴重。
三.什么是測試計划
可以這樣理解:通過測試策略確定的測試活動,而這些測試活動都在測試計划中被拆分為一個個任務。並且每個任務都確定工期,執行的先后順序和責任人。
如圖所示
測試策略 測試計划 測試資源
測試計划實例
任務名稱 | 責任人 | 任務起止時間 | 優先級 |
測試任務1 |
張三 | 2018/8/5至2018/8/7 | 高 |
測試任務2 |
李四 | 2018/8/8至2018/8/10 | 中 |
測試任務3 |
王五 | 2018/8/11至2018/8/13 | 低 |
四.什么是測試方案
測試方案主要是解決功能特性在測試執行方面的問題。
要注意,測試策略要解決的是軟件測試中的六大問題(一.測試策略中有說到),而這里測試方案則是解決對功能特性如何進行測試,以及如何安排這種測試的執行。
具體包括:
1)對功能特性的需求,場景,設計進行分析,提取出測試點
2)對測試點選擇合適的測試設計方法(如,等價類設計法,邊界值設計法,場景流法,錯誤探測法,如何選擇測試數據)
3)是否需要進行性能測試或自動化測試,若有,則進行相關的設計,如提取性能需求,部署環境等等。
4)測試執行時需要按照怎么的順序來執行這些用例。
舉例如下:
1.測試方案模板(以一個功能特性為單位):
1.xxx特性的場景
a)用戶場景描述:
描述用戶會如何使用這個功能特性。
b)測試場景描述:
描述測試時會怎么模擬用戶的使用,模擬和實際差別在哪里,是否會有風險。等等。
2.xxx特性設計分析:
a)產品實現中的關鍵業務流程。
b)重要的算法(或實現技術)的分析
c)其他需要主要的內容分析。
3.xxx特性測試分析:
a)測試類型分析
b)功能交換分析。
4.xxx特性測試設計:
對測試點選擇合適的測試設計方法,並得出測試用例
為測試用例划分優先級
5.xxx特性測試執行:
那些用例需要進行手工測試。
那些用例需要進行自動化測試。
那些用例需要進行性能測試。
測試用例是否需要考慮執行的順序。
是否還有些地方可以進行探索測試。
2.測試方案需要遵循的測試策略
例如,該測試方案中的某些特性 需要遵循 測試策略中的測試深度和廣度的要求。
特性 | 測試優先級(測試重點) | 測試說明(測試深度和廣度) |
特性A | 高 | 1.需要進行全面,深入的功能測試 2.需要考慮各種測試類型,尤其是可靠性方面的測試 |
特性B | 低 | 只需要進行基本功能驗證測試即可 |
軟件測試與產品的六大特性
產品 | 可靠性 | 可靠性測試 | 異常值測試 |
故障植入測試 | |||
穩定性測試 | |||
恢復測試 | |||
功能性 | 功能測試 | 運行正確值輸入 | |
運行邊界值輸入 | |||
等價類測試法 | |||
場景測試 | |||
效率 | 性能測試 | 壓力測試 | |
負載測試 | |||
對指定的性能指標進行測試 | |||
可維護性 | 可維護性測試 | 檢查產品是否可維護 | |
升級測試,更新測試 | |||
下載鏈接測試,是否下載到最新版本 | |||
兼容性 | 兼容性測試 | 平台測試 (檢查產品是否能在各個平台運行,如app測試中,能運行在什么類型的手機) |
|
操作系統適應性測試,檢查產品能運行在什么操作系統上 | |||
易用性 | 易用性測試 | 產品是否提供教程 | |
產品中的功能控件是否簡潔易用,不復雜 | |||
產品中的下拉彈出窗口最多三層,如txt記事本,里面有一個【文件】按鈕,點擊 后會彈出第一層下拉窗口,然后在點擊其中的【另存為】就會彈出第二層窗口,選 擇地址,點擊保存后就存儲成功。整個操作最多展開了兩層。 |
對於特性A,因為要進行全面測試,那我們需要覆蓋六大特性中的所有內容
對於特性B,因為只需要基本功能驗證,所以我們可以選擇功能測試中的內容。