# :-: 一個BUG(缺陷)的生命周期
缺陷狀態
對于一個問題,其處理過程是一個周期,周期的不同階段,其所處的狀態也是不一樣的。不同狀態所對應的處理人也是不一樣的。
打開?:?表示問題被提交等待有人處理。
重新指派?:?問題被重新指派給某人處理。?
處理?:?問題在處理中,尚未完成。
固定?:?確認此問題存在,但暫時不進行處理。
回歸?:?對已經修復的問題進行回歸確認。Reopened?:
關閉?:?問題的最后一個狀態。

1》提交(打開)缺陷
在提交一個缺陷的缺陷,首先盡量描述這個缺陷的屬性。Bug重現環境,bug類型,bug等級,bug的優先級以及詳細的重現步驟,結果與期望等。
當然,我們在提交一個問題之前首先應該保證,這個缺陷是沒有被提過的,以免造成重復缺陷單。
如果是回歸不通過的缺陷,其狀態又會變為打開狀態。
2》分配(轉交)缺陷
這一步不是必須的,跟項目模式有關,有些公司測試部門與開發部門獨立,那么測試人員就不確定自己測試的模塊是由哪位開發人員負責的,在這種情況下,測試人員統一把問題指派給項目組長或經理,由項目組長(或經理)對問題進行確認后再次分配給相應的開發人員。
有些測試人員是穿插到不同研發團隊中的,所以對不同的開人發員負責的開發模塊非常清楚,這個時候就可以將問題直接指派給相應的開發人員。
也有一種情況,本來此問題應該由A開發人員負責,但由于A開發人員的調離或辭職,些問題為轉交給其它人員處理。“分配”強調是上級對下級;“轉交”強調的是平級之間。
3》確認缺陷
當開發人員接到一個缺陷時,首先是對其進行分析與重現,如果對其進行分析發現不是缺陷(可能由于測試人員不了解需求)或無法對此問題進行重現,那么就需要將此問題反回給測試人員,并注明原因。如果確認為缺陷則需要對其進行處理。
4》推遲處理
在處理問題之后,還需要進行一次判斷,是否需要推遲處理,有些需求已經確認了是問題,由于其可能在極端情況下才會出現,或需要對系統架構進行改動,或其優先級非常低,所以暫時不需要對此問題進行處理(或到下個版本進再進行修復)。
固定
對于推遲處理的問題可以暫時進行固定(“固定”為QC中的叫法。)一般固定的問題需要經過項目經理與測試經理協商后才能固定。
5》處理缺陷
開發人員在確認完一個問題需要處理時,那么就對其進行處理工作。(例如,redmine?是支持處理人時時更新問題處理進度的,如?已處理30%?,已處理80%?等,當然,對于短時間內可以修復的問題就沒必要時時的去更新處理進度。)
6》回歸缺陷
回歸缺陷對于測試人員來說是非常重要的工作,其有三個入口兩個出口。
確認非缺陷問題:對于提交的一個缺陷,開人員處理為非問題或無法重現,然后直接轉交給測試人員回歸。測試人員再次確認,如果真如開發人員所說,則將問題關閉。如果非開發人員所說,是由于問題描述模糊或其它原因喂重現問題,則再次注明原因轉給開發人員。
確認修復問題:對開發人員修復的問題再次進行確認,確認能過,則關閉問題。確認不通過,將問題再次打開并轉給開發人員。
確認固定問題:有計劃的對固定問題進行確認,有些固定問題隨著時間的推移,版本的更新或已經不存在了,對這類問題應該及時關閉。有些固定問題依然存在且變得緊急,對于這類問題應該及時打開交給開發人員處理。
7》關閉缺陷
對于已經修復的缺陷進行關閉,這也是一個缺陷的最后一個狀態。
- 第一章-測試理論
- 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 兼容性測試