軟件測試的概念
使用人工或自動的手段測試某個系統(tǒng)的過程,目的在于檢測他是否滿足規(guī)定的需求,弄清楚預期結果與實際結果的差別
軟件測試分類
- 測試方式(運不運行代碼)分類
靜態(tài)測試,動態(tài)測試。 - 測試方法(看不看代碼)
黑白灰盒 - 測試過程分類
單元測試-> 集成測試 -> 系統(tǒng)測試 -> 驗收測試 - 測試目的分類
功能測試 健壯性測試 壓力測試 界面測試 安全測試 安裝,反安裝測試 兼容性測試 等
軟件測試的V,W模型
V模型
先開發(fā)后測試
用戶需求 -> 需求分析/系統(tǒng)設計 -> 概要設計 -> 詳細設計 -> 編碼 ->
<- 驗收測試 <- 系統(tǒng)測試 <- 集成測試 <- 單元測試 <---------------------
W模型
測試與開發(fā)同步進行
用戶需求 -> 需求分析/系統(tǒng)設計 -> 概要設計 -> 詳細設計 ->
編碼 -> 集成 ->實施 -> 交付
(準備) 驗收測試 -> 系統(tǒng)測試 -> 集成測試 -> 單元測試 ->
單元測試 -> 集成測試 ->系統(tǒng)測試-> 驗收測試
測試用例的概念
測試用例是測試執(zhí)行的最小實體,是為特定的目的而設計的一組測試輸入,執(zhí)行條件和預期結果。
測試用例的分類
- 白盒測試用例
- 軟件各項功能的測試用例 (黑盒測試用例)
- 用戶界面測試用例
- 軟件各項非功能測試用例
- 對軟件缺項修正所確認的測用例
測試階段與測試用例的對應關系
- 單元測試 :模塊功能測試
- 集成測試 :接口測試,路徑測試
- 系統(tǒng)測試 :功能測試,兼容性測試,性能測試,用戶界面測試,安全性測試,強度測試,可靠性測試,安裝、反安裝測試
- 驗收測試: 基本同上,包括文檔測試
軟件缺陷的概念
存在于軟件(文檔,程序,數(shù)據(jù))中那些不希望或不可接受的偏差而導致的質量問題
軟件復雜缺陷的生命周期
--- [發(fā)現(xiàn)]
--- 登記缺陷,移交程序員 ---> [打開]
--- 程序員認為是小缺陷,移交項目管理員--> [打開]
--- 項目管理員認為缺陷不重要 --> [以不修復的方式解決]
--- 測試員不同意,找出案例并提交到項目管理員 -> [打開]
--- 項目管理員統(tǒng)一修復,移交到程序員 --> [打開]
--- 程序員修復缺陷,移交到測試員 --> [以修復的形式解決]
--- 測試員確認缺陷以修復, 關閉缺陷 --> [關閉]
測試組織與人員管理原則
- 盡快落實責任 (盡早指定負責人)
- 減少接口 (減少組內(nèi)層級,方便人員溝通,提高工作效率)
- 職責明確,均勻 (組員明確自身角色)
軟件測試人員的基本素質
- 一般能力: 表達 交流 協(xié)調 管理
- 測試技能與方法: 測試的基本概念與方法,測試工具與環(huán)境,測試標準
- 測試執(zhí)行能力: 編寫測試腳本/用例, 測試比較與分析, 缺陷記錄與處理
- 測試分析,報告,改進: 測試度量,統(tǒng)計技術,測試報告,過程檢測與持續(xù)改進
軟件測試常用文檔
前置作業(yè)文檔
- 測試計劃
- 測試設計規(guī)格說明
- 測試用例說明
- 測試規(guī)程說明
- 測試日志
后置作業(yè)文檔
- 測試缺陷報告
- 測試總結報告
測試計劃文檔
- 測試計劃標識符
- 介紹
- 測試項
- 需要測試的功能
- 測試方法
- 不需要測試的功能
- 測試通過與失敗的標準
- 測試中斷與恢復的條件
- 測試完成鎖提交的材料
- 測試任務
- 環(huán)境需求
- 職責
- 人員安排與培訓需求
- 進度表
- 潛在問題與風險
- 審批