前言
隨著時(shí)代的發(fā)展,軟件規(guī)模越來越大,復(fù)雜程度越來越高,對(duì)測(cè)試工作也提出了更高的要求,測(cè)試領(lǐng)域也隨之涌現(xiàn)出了各種各種的理論、方法和工具。這其中很重要的一個(gè)分支便是測(cè)試管理工具,它主要解決的是測(cè)試過程中團(tuán)隊(duì)協(xié)作的問題,比如缺陷管理、用例管理、測(cè)試任務(wù)管理等。
目前市面上比較流行的測(cè)試管理工具有QC、Mantis、BugZilla、TestLink、Trac、Redmine、 BugFree等。有開源軟件,也有商業(yè)軟件。這些軟件的各自側(cè)重點(diǎn)不同:比如Mantis, BugZilla偏重缺陷管理,TestLink則偏著測(cè)試用例管理,QC則更加全面,Trac和Redmine項(xiàng)目管理的概念又更強(qiáng)一些。 我們?cè)诳偨Y(jié)分析這些軟件的優(yōu)缺點(diǎn)基礎(chǔ)上,結(jié)合自己日常實(shí)際工作的需要,設(shè)計(jì)了一套測(cè)試管理軟件,這篇文章是在設(shè)計(jì)這款軟件過程中的總結(jié)和思考,希望可以 給大家一些啟發(fā)。
在設(shè)計(jì)的過程中,我們確立的目標(biāo)是在一套軟件里面可以實(shí)現(xiàn)測(cè)試全過程的管理。那么,哪些功能是在這個(gè)管理過程中必不可少的呢?經(jīng)過激烈的討論和不斷的修正,我們整理總結(jié)出以下九大功能,它們分別是:測(cè)試需求管理、測(cè)試用例管理、測(cè)試套件管理、測(cè)試版本管理、測(cè)試計(jì)劃管理、測(cè)試執(zhí)行管理、缺陷管理、發(fā)布管理和分析報(bào)表。下面筆者這些功能一一闡述。
一、測(cè)試需求管理
需求是一款軟件產(chǎn)品的靈魂,是開發(fā)和測(cè)試重要的參照標(biāo)準(zhǔn)。很難想象一個(gè)沒有需求的軟件如何去設(shè)計(jì)它的測(cè)試用例。無論是測(cè)試用例,還是缺陷,都是建立在特定的需求基礎(chǔ)之上的。因此,一款好的測(cè)試管理軟件首先具備的便是測(cè)試需求管理。
1.1 需求拆分
傳統(tǒng)的項(xiàng)目管理流程中,需求往往以需求規(guī)模說明書的形式呈現(xiàn)。需求規(guī)格說明書比較全面,但缺點(diǎn)是沒有拆分為需求點(diǎn),無法實(shí)現(xiàn)對(duì)某一個(gè)具體的功能點(diǎn)的跟蹤。因此在我們?cè)O(shè)計(jì)的測(cè)試管理工具中,需求是以需求功能點(diǎn)的形式呈現(xiàn)。這樣有利于針對(duì)每一個(gè)功能點(diǎn)撰寫測(cè)試用例,并進(jìn)行測(cè)試的跟蹤管理。
大模塊拆成小需求,小需求拆成需求點(diǎn),拆分之后,一層層的分級(jí)管理便是必不可少的了。為了適應(yīng)日益復(fù)雜的需求和變化響應(yīng),需求的模塊還需要實(shí)現(xiàn)無限級(jí)的劃分,這樣可以形成一顆樹狀結(jié)構(gòu),無論從瀏覽還是管理上都更為靈活和方便。

1.2 需求管理
有了模塊之后,緊接著需要實(shí)現(xiàn)的便是測(cè)試需求的管理。我們需要一個(gè)界面來錄入需求,常見的字段包括:標(biāo)題、描述、優(yōu)先級(jí)等。另外也可以對(duì)需求進(jìn)行修改,刪除等操作。

1.3 需求搜索
實(shí)現(xiàn)了基本的需求維護(hù)功能之后,我們還需要實(shí)現(xiàn)需求的搜索功能,這樣方便我們找到自己想要的需求。

二、測(cè)試用例管理
好,我們現(xiàn)在有了測(cè)試需求,我們可以為每一個(gè)需求撰寫測(cè)試用例了。測(cè)試用例的維護(hù)涉及到模塊劃分、測(cè)試用例維護(hù)、導(dǎo)入導(dǎo)出和搜索等功能。
2.1用例模塊劃分
類似于需求的模塊維護(hù),用例也需要通過模塊的劃分來維護(hù)用例。在我們?cè)O(shè)計(jì)的軟件中,測(cè)試用例的模塊和需求的模塊式分開的。讀者肯定會(huì)問,為什么還要為用力維護(hù)一套模板呢?為什么不重用需求的模塊劃分呢?這是因?yàn)樵趯?shí)際項(xiàng)目中,需求是從用戶和產(chǎn)品的角度來看,需求更多的是幫助用戶如何達(dá)成一個(gè)操作,實(shí)現(xiàn)一個(gè)功能。但是用例設(shè)計(jì)不止要考慮需求,還需要考慮一些異常情況來設(shè)計(jì)用例,為用例單獨(dú)開設(shè)模塊管理不會(huì)影響到原有的需求管理部分。
2.2用例的維護(hù)
下面我們要實(shí)現(xiàn)的便是測(cè)試用例的基本添加,編輯等操作。這個(gè)功能在大多有測(cè)試用例管理的工具中都會(huì)實(shí)現(xiàn),但需要特別說明的是,在絕大多數(shù)的管理工具中,測(cè)試用例的步驟是沒有分開的,每一步的預(yù)期甚至也是混在一個(gè)字段中。其實(shí)這樣并不可科學(xué),不僅會(huì)降低用例執(zhí)行的粒度,還會(huì)影響后續(xù)的一些數(shù)據(jù)生成,至于是生成什么樣的數(shù)據(jù),先在這里 賣個(gè)關(guān)子,后面解釋:-)。在我們?cè)O(shè)計(jì)的系統(tǒng)中,用例的步驟和每步的預(yù)期是完全分開的。

2.3 用例的導(dǎo)入導(dǎo)出
目前很多公司還是在使用Excel書寫和保存測(cè)試用例,如果一家公司準(zhǔn)備采用一套測(cè)試管理系統(tǒng),將這些用例手工導(dǎo)入將是一項(xiàng)繁重的工作。 因此測(cè)試管理工具需要能夠?qū)xcel里面的用例導(dǎo)入到系統(tǒng),同樣,也能夠?qū)y(cè)試用例導(dǎo)出為Excel格式的文件。
從數(shù)據(jù)庫導(dǎo)出Excel的功能還是比較好實(shí)現(xiàn)的,Excel的導(dǎo)入功能方面,筆者設(shè)計(jì)的思路是可以通過excel的VBA編程自動(dòng)實(shí)現(xiàn)數(shù)據(jù)的獲取,并且可以更新回到系統(tǒng)中,這樣會(huì)更加方便快捷。目前正在研究摸索中。
2.4 用例搜索功能
同需求的搜索功能,我們同樣也需要對(duì)測(cè)試用例進(jìn)行方便的檢索,以便找到自己想要用到的測(cè)試用例。
三、測(cè)試套件管理
有了測(cè)試用例之后,緊接著一個(gè)問題會(huì)產(chǎn)生,那是如何組織維護(hù)這些用例。除了上面所說的模塊功能、導(dǎo)入導(dǎo)出和搜索之外,測(cè)試套件功能也可以非常方便的幫助測(cè)試人員來組織整理自己的測(cè)試用例。
測(cè)試套件(Test Suite)可能是一個(gè)分歧比較多一個(gè)概念,在我們看來,測(cè)試套件是一個(gè)集合,可以方便的將某一些用例按照某個(gè)特征組織在一起,方便后續(xù)的管理和維護(hù)。因此從這個(gè)角度來實(shí)現(xiàn)測(cè)試套件的功能包括測(cè)試套件的創(chuàng)建、關(guān)聯(lián)測(cè)試用例、測(cè)試套件的瀏覽維護(hù)等功能,不再細(xì)述。
四、測(cè)試版本管理
在目前的軟件開發(fā)流程中,代碼的版本控制已經(jīng)得到了普遍的應(yīng)用。 而由此我們可以引申出測(cè)試版本這個(gè)概念。 一個(gè)測(cè)試版本可以是對(duì)應(yīng)一個(gè)Build,也可以對(duì)應(yīng)一個(gè)時(shí)間點(diǎn),測(cè)試版本的概念很重要,通過它我們可以明確我們目前測(cè)試的范疇,知曉我們需要執(zhí)行哪些測(cè)試 用例。同時(shí)開發(fā)人員在修復(fù)bug的時(shí)候,也可以明確當(dāng)前的修復(fù)工作會(huì)影響到哪個(gè)版本。
4.1 版本和需求、bug的關(guān)聯(lián)
首先我們需要實(shí)現(xiàn)的便是測(cè)試版本和需求、bug的關(guān)聯(lián)。也是我們?cè)趧?chuàng)建一個(gè)測(cè)試版本的時(shí)候,需要確定這個(gè)版本都完成了哪些需求,解決了哪些bug,這樣界定了我們測(cè)試的范疇。下圖是我們?cè)O(shè)計(jì)的系統(tǒng)中實(shí)現(xiàn)的創(chuàng)建版本時(shí),需求和bug的關(guān)聯(lián)頁面。

4.2 版本和源代碼管理系統(tǒng)的集成
一個(gè)版本肯定對(duì)應(yīng)到源代碼管理系統(tǒng)中的某一個(gè)路徑,一般是對(duì)應(yīng)到類似tags/xxx.1.0.build1類似的 目錄。細(xì)心的讀者可能已經(jīng)注意到,我們上面圖中的源代碼和存儲(chǔ)地址是以文本框的形式呈現(xiàn)的。這也是我們正在計(jì)劃實(shí)現(xiàn)的一個(gè)功能,是源代碼的版本可以自動(dòng) 從源代碼管理軟件中獲取。 比如我可以從Subversion的某一個(gè)路徑中獲得對(duì)應(yīng)的代碼版本,這樣可以將測(cè)試管理系統(tǒng)和代碼管理系統(tǒng)進(jìn)行有機(jī)的結(jié)合。
最新發(fā)布
熱門文章
熱門標(biāo)簽
|