BUG的生命週期就是一個BUG被發現到這個BUG被關閉的過程,具體過程為:1、發現BUG,即發現軟體程式的漏洞或缺陷;2、提交bug,需要盡量描述這個缺陷的屬性、重現環境、類型、等級,優先順序以及詳細的重現步驟、結果與期望等;3、指派bug,即將問題直接指派給相應的開發人員;4、分析並確認為缺陷;5 、處理並修復BUG;6、回歸驗證BUG;7、關閉BUG。
本教學操作環境:windows7系統、Dell G3電腦。
軟體的BUG,狹義方面可以理解為是指軟體程式的漏洞或缺陷,廣義方面除找到程式的之外還包括測試工程師或用戶所發現和提出的軟體可改進的細節、或與需求文件存在差異的功能實現等。即測試的介入可以從需求分析開始,追蹤開發流程。
BUG的生命週期,就是一個BUG被發現到這個BUG被關閉的過程。
生命週期中缺陷狀態:新建-->指派-->已解決-->待驗-->關閉
發現BUG–>提交BUG–>指派BUG–>研發確認BUG–>研發去修復BUG–>回歸驗證BUG–>是否透過驗證–>關閉BUG
#如果待驗的BUG在驗證時沒有解決好,我們需要重新開啟--指派—已解決—待驗,循環這個過程。
中間其他狀態:拒絕、延期等
BUG的處理流程圖(生命週期圖)
a.依照測試案例進行操作,發現和測試案例的預期結果不一致的,都可以稱為Bug。
b.測試案例不可能窮盡,總有超出你預料之外的因素,或者是神操作出現的bug。
c.成本問題,沒有充足的時間編寫測試案例,發現的bug
在提交一個缺陷的缺陷,首先盡量描述這個缺陷的屬性、Bug重現環境,bug類型,bug等級,bug的優先順序以及詳細的重現步驟,結果與期望等。
當然,我們在提交一個問題之前首先應該保證,這個缺陷是沒有被提過的,以免造成重複缺陷單。
這一步不是必須的,跟專案模式有關,有些公司測試部門與開發部門獨立,那麼測試人員就不確定自己測試的模組是由哪位開發人員負責的,在這種情況下,測試人員統一把問題指派給專案組長或經理,由專案組長(或經理)對問題進行確認後再次分配給相應的開發人員。
有些測試人員是穿插到不同研發團隊中的,所以對不同的開人髮員負責的開發模組非常清楚,這個時候就可以將問題直接指派給相應的開發人員。
也有一種情況,本來此問題應該由A開發人員負責,但由於A開發人員的調離或辭職,些問題為轉交給其它人員處理。 「分配」強調是上級對下級;「轉交」強調的是平級之間。
當開發人員接到一個缺陷時,首先是對其進行分析與重現,如果對其進行分析發現不是缺陷(可能由於測試人員不了解需求)或無法對此問題進行重現,那麼就需要將此問題反回給測試人員,並註明原因。如果確認為缺陷則需要處理。
延遲處理
在處理問題之後,還需要進行一次判斷,是否需要推遲處理,有些需求已經確認了是問題,由於其可能在極端情況下才會出現,或需要對系統架構進行改動,或其優先級非常低,所以暫時不需要對此問題進行處理(或到下個版本進再進行修復)。
固定:
對於延遲處理的問題可以暫時進行固定(「固定」為QC中的叫法。)一般固定的問題需要經過專案經理與測試經理協商後才能固定。
處理缺陷:
開發人員在確認完一個問題需要處理時,那麼就對其進行處理工作。 (例如,redmine 是支援處理人時時更新問題處理進度的,如已處理30% ,已處理80% 等,當然,對於短時間內可以修復的問題就沒必要時時的去更新處理進度。)
回歸缺陷對於測試人員來說是非常重要的工作,其有三個入口兩個出口。
確認非缺陷問題:對於提交的一個缺陷,開人員處理為非問題或無法重現,然後直接轉交給測試人員回歸。測試人員再次確認,如果真如開發人員所說,則將問題關閉。如果非開發人員所說,是由於問題描述模糊或其它原因餵食重現問題,則再次註明原因轉給開發人員。
確認修復問題:對開發人員修復的問題再次進行確認,確認能過,則關閉問題。確認不通過,將問題再次開啟並轉給開發人員。
確認固定問題:有計劃的對固定問題進行確認,有些固定問題隨著時間的推移,版本的更新或已經不存在了,對這類問題應該及時關閉。有些固定問題依然存在且變得緊急,對於這類問題應該及時打開交給開發人員處理。
對於已經修復的缺陷進行關閉,這也是一個缺陷的最後一個狀態。
在做介面測試的時候可以使用國產的介面測試和介面文件產生工具apipost
Bug會導致軟體在執行時發生意料不到的故障,為企業帶來損失,而軟體測試的過程簡單來說就是圍繞bug進行的品質保證工作。為了提升測試工作效率,同時能夠更有效率的管理bug、提交bug、解決bug,合理的使用一些bug管理軟體是非常必要的。
禪道
##禪道是第一款國產開源專案管理軟體。它的核心管理思想基於敏捷方法scrum,內建了產品管理和專案管理,同時根據國內研發現況補充了測試管理、計劃管理、發布管理、文件管理、事務管理等功能。在一個軟體中就可以將軟體研發中的需求、任務、bug、用例、計畫、發布等要素有序的追蹤管理起來,完整地涵蓋了專案管理的核心流程。 禪道使用自主開發的zentaophp框架開發,內建了完整的擴展機制,使用者可以非常方便的對禪道進行徹底的二次開發。禪道也為每個頁面提供了json介面的api,方便其他語言來呼叫互動。內建多語言支持,多風格支持,搜尋功能,統計功能等實用功能。Tracup
Tracup 是一款輕量級的團隊協同平台,提供簡潔、高效的Bug 追踪,輕量級、便利的專案管理,安全、穩定的資料保障,完美地將Bug管理與團隊合作結合在一起。 無論是修改Bug,或是新增一個功能, Tracup 都可以提供一個理想的工作雲平台。便利團隊協作,輕量的專案管理, 完整的問題系統,大容量的文件存儲,讓使用者工作更方便。Bugtags
Bugtags是新一代的、專為行動測試而生的缺陷發現及管理工具。致力於改善行動 app 的測試流程,連結發現缺陷與提交缺陷之間的使用者體驗,提高測試及解決缺陷的效率。幫助測試人員有效率的進行 app 測試及 bug 的追蹤與管理。 行動app 整合bugtags SDK 後,測試用戶就可以直接在app 裡所見即所得的提交bug,SDK 會自動截圖、收集app 運行時數據,如:設備信息,控制台數據,用戶的操作步驟等,開發人員在bugtags 雲端高效的追蹤及管理bug。 Bugtags 與其它bug 管理系統相比,最大的區別在於:Bugtags 是專為行動開發而設計的,不是簡單將以前面向Web 及桌面應用的bug 管理系統進行的改進或升級,而是完全以行動app 開發和測試的視角重新設計的bug 管理系統。 Bugtags 不需要佈署,雲端註冊即可使用,簡單便捷。 國外的bug管理軟體有:##BugzillaBugzilla 是Mozilla 公司提供的開源的免費Bug 追蹤系統,它可以管理軟體開發中缺陷的提交(new),修復(resolve),關閉(close)等整個生命週期。用來管理軟體開發,建立完善的 Bug 追蹤系統。
JIRAJIRA是一個缺陷追蹤管理系統,開發者是 Atlassian。 JIRA 這個名字並不是一個縮寫,而是截取自「Gojira」 。 JIRA被廣泛應用於缺陷追蹤、客戶服務、需求收集、流程審批、任務追蹤、專案追蹤和敏捷管理等工作領域。 JIRA中配置靈活、功能全面、部署簡單、擴展豐富,其超過150項特性得到了全球115個國家超過19,000家客戶的認可。
WebIssues
#WebIssues是一個採用客戶機/伺服器模式的團隊協作工具和問題追蹤系統,可以支援小規模的開發團隊。它可以被用來存儲,共享和追蹤問題的各種屬性,註釋和文件附件。很容易安裝和使用,高度可自訂。伺服器可安裝在任何支援PHP和MySQL或PostgreSQL的主機上,用戶端可以是視窗或Linux的桌面。
Bugify
Bugify是一個非常簡單的bug追蹤管理系統,而且功能非常強大。它的主要功能有:問題優先級,搜尋過濾,郵件通知,標籤,問題鏈接,鍵盤快捷鍵,Mardown格式化,最突出的功能就是支援無限種其他語言。
更多程式相關知識,請造訪:程式設計教學! !
以上是bug的生命週期是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!