1、什麼是測試策略?
測什麼?怎麼測?
2、測試策略和測試方針?
測試方針是產品測試的通用要求、原則或底線。
遵循測試方針 + 專案實際情況 = 測試策略
3、測試策略和測試計畫?
它們之間的關係是:通過測試策略確定的測試活動被分解為乙個個測試任務,這些任務有確定工期,執行的先後次序和責任人。
測試計畫屬於測試經理的範疇。
4、測試策略和測試方案?
測試方案解決的是特性在測試設計和測試執行方面的問題。 而測試策略解決的是產品測試的六大問題。
明確「產品質量目標」
進行「風險分析」
適配「產品開發流程」
進行「測試分層」
一、明確產品質量目標
1、通過「產品質量評估模型」來得到產品的質量目標。
2、圍繞產品的質量目標來進行剛剛好的測試,即質量要求高的重點測,質量高的測試投入大,質量要求高的測得深。
3、圍繞著產品質量評估模型將目標——行為——評估形成閉環。
我們通過「產品質量模型」得到具體的產品質量目標,根據質量目標來制定測試策略,確定測試活動,接著執行測試活動,最後對測試效果進行評估。
二、進行風險分析
如果漏掉了風險風險,那麼在測試執行過程中會出現很多阻礙而且會感覺測試策略很笨重。
1、提前識別專案中的阻礙測試的風險,基於風險調整測試策略。
2、基於風險來加強和降低測試的投入。
三、適配「產品開發流程」
四、進行測試分層
測試分層是將有公共測試目的的測試活動放在一起形成乙個組,然後一組一組地逐一進行測試。
通過測試分層,可以將大的測試目標分解到不同層中去執行。
五、四步制定法中的測試技術
明確產品質量目標:產品質量評估模型、缺陷分析技術
風險分析: 風險分析技術、老功能分析技術
測試分層: 分層測試技術
很多時候,即使使用了多個質量指標去評估質量,但是心裡還是沒底— —這是因為這些指標往往覆蓋不全,導致心裡沒底。
產品質量評估模型的優秀特質:
從3個方面建立質量評估模型:
需求覆蓋度:已經測試驗證的產品需求和產品需求規格總數的比值。(定量指標)
路徑覆蓋度:已經測試到的語句的數量和程式中可執行語句的總數量的比值(定性指標)
一、需求覆蓋度評估
需求覆蓋度的目標必須是100%。
需求覆蓋度評估有一下兩個方法:
方法1:直接在需求表中確認測試情況。
方法2:建立測試用例和需求的對應關係。
注:方法1最好不要在測試結束後再進行確認,這樣往往時間不夠。而應該邊測試邊確認。方法2注意的是需求變化的那部分,特別是專案後期的增加、修改、刪除的需求。方法2中可能會出現一對多或者多對多的情況,所以最好有工具來維護。
二、路徑覆蓋度評估
語句覆蓋:覆蓋系統中所有判定和過程的最小路徑集合
分支覆蓋:覆蓋系統中每個判定的所有分支所需的最小路徑數
全覆蓋:100%地覆蓋系統所有可能的路徑的集合
最小線性無關覆蓋:保證流程圖中每個路徑片段能夠至少執行一次的最少的路徑組合
1、確定路徑覆蓋策略
可以將最小線性無關覆蓋作為乙個基本的路徑覆蓋方式
對優先順序高的功能特性,可以在最小線性的基礎上增加一些路徑
對優先順序低的功能特性,可以在最小線性無關覆蓋的基礎上減少一些路徑
2、使用路徑分析法設計測試用例
3、跟蹤測試用例的執**況
一、測試用例評估
用例執行率 = (執行用例的失敗數+成功數)/ 總用例數 【注:同一條用例重複執行,只算一次】
影響執行率的因素可能有測試阻塞和未執行。
測試用例執行通過率可以分為:首次執行通過率和累積執行通過率。
首次執行通過率 = 第一次執行該測試用例的結果為「通過」的測試用例數 / 已經執行的測試用例數
累積執行通過率 = 測試用例結果為「通過」的測試用例數 / 已經執行的測試用例數
首次執行通過率可以評估開發版本的質量
樂基執行通過率可以評估產品發布是的質量
測試用例和非測試用例發現缺陷比。
二、測試投入分析
1、缺陷密度
即每千行**發現的缺陷數。
確定和分析缺陷密度的重要意義在於:
1、通過缺陷密度,我們可以**產品中可能會有多少缺陷
2、通過缺陷密度,可以幫助我們評估當前已經發現的缺陷總數是否足夠多。如果缺陷密度和預期偏差較大,原則上不應該退出測試,發布產品。
由於實際的缺陷密度和預期的缺陷密度不會恰好相等,所以應該有乙個偏差範圍:比如偏差範圍3%、5%等。
2、缺陷修復率
即:已經修復解決的缺陷總數和已經發現缺陷總數的比值。
1.缺陷的嚴重程度
3、缺陷趨勢分析
即:隨著測試時間的進行,測試發現的缺陷趨勢和開發解決缺陷的趨勢。
1、繪製缺陷分析圖
主要的指標有:累積發現的缺陷數,當天發現的缺陷數,累積解決的缺陷數,當天解決的缺陷數
2、缺陷趨勢曲線的「凹凸點」和「拐點」
理想情況下,應該是隨著時間的增加,先出現凹曲線,一段時間後出現凸曲線。注意拐點的位置不能過快或者沒有拐點
3、缺陷是否收斂
累積發現的缺陷最後為凸函式,最後與累積解決的缺陷越來越靠近,最終趨於一點。
ps:如果累積解決的缺陷趨勢沒有趨向一點,說明開發還有很多缺陷沒有修復,應該繼續測試
如果累積發現的缺陷趨勢還是為凹函式,那麼說明還有可能有很多的缺陷被發現,也應該繼續測試。
4、缺陷年齡分析
是指軟體產生或引入缺陷的時間。
缺陷年齡
描述繼承或歷史遺留
屬於歷史版本。繼承版本或是移植**中的問題,非新開發的問題
需求階段引入
缺陷是在產品需求設計階段引入的,主要包括如下情況:
1、需求不清的問題
2、需求錯誤的問題
3、系統整體設計的問題
設計階段引入
缺陷是在產品設計階段引入的問題,主要包括如下情況:
1、功能和功能之間的介面的問題
2、功能互動的問題
3、邊界值設計方面的問題
4、流程、邏輯設計相關的問題
5、演算法設計方面的問題
編碼階段引入
缺陷是在產品編碼階段引入的問題,主要包括如下情況:
1、流程、邏輯實現相關的問題
2、演算法實現相關的問題
3、程式設計規範相關的問題
4、模組和模組之間介面的問題
新需求或變更引入
缺陷是因為新需求、需求變更或設計變更引入的問題
缺陷修改引入
缺陷是因為修改缺陷時引入的問題。如開發雖然成功修復了乙個缺陷,但修改又引入了新的缺陷
InfoQ 架構師修煉之道
架構師是乙個神秘而又神聖的名詞,作為軟體開發領域的設計師,架構師承載著太多的責任和挑戰。對於乙個程式設計師或者工程師來說,架構師就像是乙個目標,一條道路,抑或是一座山峰。如何能夠成為一名合格的架構師?架構師應該具備何種素質?而架構師又是如何做到持續不斷的成長和提高的呢?帶著這些問題,我們請到了五位i...
讀《測試架構師修煉之道》劉琛梅 筆記001
讀 測試架構師修煉之道 劉琛梅 測試核心 測試策略,測試策略包括 測什麼,怎麼測 主要分解為 1 測試物件和範圍 測什麼,測試物件有什麼特點,測試覆蓋的範圍?2 測試目標 3 測試的重點和難點 根據測試物件的特性確定測試的重點以及難點,如金融產品的特點,安全性 資料,4 測試的深度和廣度,根據測試物...
系統架構師修煉之道 (1) 序
系統架構師是乙個很虛的職位,也是很多程式猿追求的目標,它代表了一定的技術高度,特別是當今網際網路時代,真正懂架構的人不多,我希望能寫下筆記,記錄我的成長一步步成長歷程,希望能和大家一起分享,一起共勉。做過很多簡單的架構,都屬於copy型吧,突然老闆說,你要有個完整的理論基礎,我忽然意識到很多知識都掌...