1. 程式人生 > >測試管理工具之Bugfree

測試管理工具之Bugfree

計劃從事測試工作,自己先來了解下用的非常多的測試管理工具-bugfree,簡單實用、免費而且開放原始碼。

功能是:對軟體開發出現的問題進行有效的跟蹤管理,協調開發人員、測試人員和需求三方之間的關係,規範軟體的開發流程。它的模式是B/S結構(瀏覽器|伺服器),這種結構部署起來非常方便,使用者無需使用客戶端,只要有瀏覽器就可以非常方便的使用bugfree對bug進行跟蹤管理。

下載安裝的過程非常不順利,出現了這種那種問題。

bugfree版本:V3.0.4   http://down.chinaz.com/soft/31316.htm

OS:Win7

安裝bugfree的前提是安裝XAMPP軟體包,https://www.apachefriends.org/zh_cn/index.html

XAMPP是一個把Apache網頁伺服器與PHP、Perl及MySQL集合在一起的安裝包,它功能強大,安裝過程是下載,解

壓縮啟動即可。

http://jingyan.baidu.com/album/48b558e35544cc7f38c09af2.html

這個安裝教程還是比較靠譜的,我在安裝XAMPP過程中,一開始電腦上已經有MySQL資料庫,所以沒有安裝,後來

發現連線不上,就卸了之前的資料庫,折騰了幾下後,XAMPP上資料庫和APACE都安裝成功,但是開啟這個網址

http://localhost/bugfree進行bugfree進行環境配置的時候,顯示資料庫未安裝,百度說可能是php中沒有SQL擴充套件,

修改了配置檔案還是不行,最後在另一臺沒安裝過資料庫的電腦上成功安裝好了bugfree,反思,應該是資料庫沒有

卸乾淨,當一個電腦上有兩個資料庫時,埠會被佔用,另一個沒法用。配置bugfree環境時,bugfile讀寫不成功,

只要在對應目錄新建一個bugfile的資料夾就好了。第一次裝這種瀏覽器的,各種的迷茫。不過最後還是成功安裝了。

下面對其功能進行總結:

  BugFree是一個bug管理工具,能夠記錄每個問題的處理過程,不斷的提醒開發者現在還存在的問題,不會丟失和忘記。對於軟體可持續發展至關重要。學習BugFree重要的是掌握其中蘊含的軟體研發的流程思想。

在工作中,基本上都是和解決其他人提出的要求和發現問題,再提出給相應的人解決。

使用BugFree,我們所有人都可以建立,指派Bug,或者改變Bug狀態。介面分為bug、case、result三種。

BugFree的使用過程大致如下:(測試人員提交bug-開發人員進行修改-測試人員進行驗證,如不復現,則關閉這個bug)

學習BugFree - 娃娃 - lj0708226 的部落格1)當測試人員(美術和策劃部門的人員在發現問題時同樣算測試人員)發現問題就立即新建一個Bug予以跟蹤並且指派給相關的開發小組長(Dev Lead)(例如,程式,策劃,美術方面相應負責人)

學習BugFree - 娃娃 - lj0708226 的部落格2)開發小組長判斷這個Bug屬於某個特定開發人員,並指派給他處理

學習BugFree - 娃娃 - lj0708226 的部落格3)開發人員根據Bug的詳細描述資訊找到問題所在,修改程式或相應資源解決bug並且將bug返回給當初的測試人員;或者在有爭議的時候,把Bug指派給這個部分的設計人員,要求一個澄清說明。

學習BugFree - 娃娃 - lj0708226 的部落格4)測試人員(提出Bug者)在看到某個Bug被解決後,就需要去驗證這個bug是否當真不存在了,根據最初的發現步驟去證實問題真的解決了,就關閉這個bug;若還能重現,或不同意開發人員的解法,可以啟用這個bug,返還給當初的開發人員做進一步調查處理

學習BugFree - 娃娃 - lj0708226 的部落格5)當測試人員和開發人員無法達成一致意見時,由對應的設計者出面做出協調,判斷這個Bug的嚴重程度、對使用者可能的影響,根據產品的進度和專案資源作出評估,是否真的需要修理掉這個進度(這種協調和討論大部分將在一個相對固定的時間,如例會上進行)

最後要強調兩點

學習BugFree - 娃娃 - lj0708226 的部落格第一:團隊中的每個人發現問題時都可以建立個Bug來跟蹤

學習BugFree - 娃娃 - lj0708226 的部落格第二:不僅僅是軟體功能上的Bug,其他各種問題,如需求文件(Spec)的改動,介面上的錯別字、幫助文件的遣詞造句問題,某項任務的指派等等。

BugFree的使用分為三個步驟:

學習BugFree - 娃娃 - lj0708226 的部落格a.建立專案模組以及其子模組;(這一步只在專案的最開始由管理員Admin建立)

學習BugFree - 娃娃 - lj0708226 的部落格b.用自己的id登陸管理模組;

學習BugFree - 娃娃 - lj0708226 的部落格c.處理分配給自己的bug以及任務,發現新的bug之後通過BugFree傳送給相應的人處理;

執行步驟

通過IE瀏覽器,訪問http://192.168.0.16/BugFree/Login.php,這樣就能進入我們公司的BugFree登陸介面,輸入自己的使用者名稱和密碼,就可以登陸。(192.168.0.16是當前我們用來作BugFree的機器地址)

登陸進入以後就可以看到如下介面(圖略):

學習BugFree - 娃娃 - lj0708226 的部落格左側欄

學習BugFree - 娃娃 - lj0708226 的部落格切換查詢和建立

學習BugFree - 娃娃 - lj0708226 的部落格查詢模式:你可以設定不同的查詢條件,尋找你想找的bug們。

學習BugFree - 娃娃 - lj0708226 的部落格建立Bug:新建一個Bug,這個是Bug生命的開始。注意,你必須要選定該Bug對應的模組。填寫完相關的Bug說明後,點選“建立Bug”按鈕即宣告一個Bug的誕生。

學習BugFree - 娃娃 - lj0708226 的部落格專案及其模組列表:你選擇不同的專案,系統會自動列出下屬模組。

學習BugFree - 娃娃 - lj0708226 的部落格專案文件和專案進度分別對應BugFree的後臺管理中新增的兩個連結(現在我們還沒有新增這兩個連結,這個兩個功能直接由VSS上的文件完成)。

學習BugFree - 娃娃 - lj0708226 的部落格最近5個指派給我的Bug:此處列出分派給你的最近五個沒有被關閉(終止生命)的Bug。

學習BugFree - 娃娃 - lj0708226 的部落格 最近5個由我建立的Bug:此處列出你最近新建的五個沒有被關閉(終止生命)的Bug。

學習BugFree - 娃娃 - lj0708226 的部落格我自定義的查詢條件:你可以在[Query Bug(查詢Bug)]中把查詢條件起個名字永久保留起來,這裡將會顯示出所有你個人定義的查詢條件。

學習BugFree - 娃娃 - lj0708226 的部落格右側欄

學習BugFree - 娃娃 - lj0708226 的部落格頁面組成

(1) 預設顯示的查詢頁面:上面顯示查詢條件,下面顯示查詢出來的符合條件的Bug們;

(2) 點選左側的Bug名,或右邊bug中列表Bug的編號,右欄將顯示該Bug的所有資訊。

學習BugFree - 娃娃 - lj0708226 的部落格 查詢:根據自己需要選擇不同的查詢條件,比如查詢Bug ID(Bug編號) Smaller Than(小於)100,下面就會倒序顯示所有ID號小於100的Bug們。

學習BugFree - 娃娃 - lj0708226 的部落格 儲存查詢:你也可以選擇“Save Query(儲存查詢)”,給這次定義的查詢命名永久儲存起來,然後就可以在【左欄】的“您自定義的查詢條件”中隨時使用這個查詢。

學習BugFree - 娃娃 - lj0708226 的部落格 一個Bug的處理過程:新建一個Bug後,或者查詢出符合條件的Bug們點選一個後,【右欄】顯示該Bug詳細資訊。在中間的四個Acion按鈕,你可以:

(1) Edit(編輯)

該動作允許你該動這個Bug所有可以改動的資訊。最常見的是把這個Bug指派給(Assign To)某同事,同時描述資訊中加上你的新註釋。

(2) Resolve(解決)

一個Bug有7種解法:

By Design - 就是這麼設計的,無效的Bug

Duplicate - 這個問題別人已經發現了,重複的Bug

External - 是個外部因素(比如瀏覽器、作業系統、其他第3方軟體)造成的問題

Fixed - 問題被修理掉了。Tester要儘可能找到這種Bug

Not Repro - 無法復現你這個問題,無效的Bug

Postponed - 是個問題,但是目前不必修理了,推遲到以後再解

Won't Fix - 是個問題,但是不值得修理了,不管它吧

(3) Close(關閉)

當一個Bug被解決之後,如果當初上這個Bug的Tester同意此解決方法,則關閉這個Bug。意味著這個Bug生命週期的終結。

(4) Activate(啟用)

如果Tester不同意該Bug的解決方法,則可將其啟用之。該Bug會自動被指派給當初解決(Resolve)的同事,當然在啟用的時候應該寫上為什麼怎麼做,讓別人明白你啟用它是有道理的。

學習BugFree - 娃娃 - lj0708226 的部落格 注意事項:

學習BugFree - 娃娃 - lj0708226 的部落格1. 不能正確的改變Bug的狀態

一個Bug只有3種狀態:Active(活動)(Bug的初始狀態。任何新建的Bug狀態都是Active。可以通過編輯修改Bug的內容並指派給合適的人員解決);

                    Resolved(已解決,解決Bug之後的狀態);

                    Closed(已關閉,已修復Bug在驗證無誤之後關閉該Bug處理完畢。如果沒有真正解決或者重新復現可以重新啟用Bug狀態重新變為Active)

實踐中經常有不熟悉的同事通過“編輯”(Edit)來改變所有的狀態,那是不合適的。正確的狀態轉換方法應該是:

學習BugFree - 娃娃 - lj0708226 的部落格(1)某個狀態自己到自己的改變,使用“編輯(Edit)”。比如一個Active的Bug,從一個人指派到另外一個人;

學習BugFree - 娃娃 - lj0708226 的部落格(2)Active -> Resolved 只能用“解決 (Resolve)”;

學習BugFree - 娃娃 - lj0708226 的部落格(3)Resolved -> Closed 只能用“關閉 (Closed)”;

學習BugFree - 娃娃 - lj0708226 的部落格(4)Resolved -> Active 和 Closed -> Active 只能使用“啟用 (Activate)”。

學習BugFree - 娃娃 - lj0708226 的部落格2.  沒有正確的設定專案/模組

上bug的時候沒有選擇所屬的專案/模組,僅使用預設的當前專案/模組。

學習BugFree - 娃娃 - lj0708226 的部落格3. 沒有正確的設定嚴重程度

明確各專案中嚴重程度1、2、3、4分別代表那些型別的缺陷,分門別類去設定。

學習BugFree - 娃娃 - lj0708226 的部落格4. 不能正確的設定解決方案

解決一個Bug的時候,一共有7種不同的解決方案。需要根據這個Bug的具體情況來設定。