測試管理工具必備九大功能分析
作者:網(wǎng)絡轉(zhuǎn)載 發(fā)布時間:[ 2012/5/10 10:50:18 ] 推薦標簽:
前言 隨著時代的發(fā)展,軟件規(guī)模越來越大,復雜程度越來越高,對測試工作也提出了更高的要求,測試領域也隨之涌現(xiàn)出了各種各種的理論、方法和工具。這其中很重要的一個分支便是測試管理工具,它主要解決的是測試過程中團隊協(xié)作的問題,比如缺陷管理、用例管理、測試任務管理等。 目前市面上比較流行的測試管理工具有QC、Mantis、BugZilla、TestLink、Trac、Redmine、 BugFree等。有開源軟件,也有商業(yè)軟件。這些軟件的各自側(cè)重點不同:比如Mantis, BugZilla偏重缺陷管理,TestLink則偏著測試用例管理,QC則更加全面,Trac和Redmine項目管理的概念又更強一些。 我們在總結(jié)分析這些軟件的優(yōu)缺點基礎上,結(jié)合自己日常實際工作的需要,設計了一套測試管理軟件,這篇文章是在設計這款軟件過程中的總結(jié)和思考,希望可以 給大家一些啟發(fā)。 在設計的過程中,我們確立的目標是在一套軟件里面可以實現(xiàn)測試全過程的管理。那么,哪些功能是在這個管理過程中必不可少的呢?經(jīng)過激烈的討論和不斷的修正,我們整理總結(jié)出以下九大功能,它們分別是:測試需求管理、測試用例管理、測試套件管理、測試版本管理、測試計劃管理、測試執(zhí)行管理、缺陷管理、發(fā)布管理和分析報表。下面筆者這些功能一一闡述。 一、測試需求管理 需求是一款軟件產(chǎn)品的靈魂,是開發(fā)和測試重要的參照標準。很難想象一個沒有需求的軟件如何去設計它的測試用例。無論是測試用例,還是缺陷,都是建立在特定的需求基礎之上的。因此,一款好的測試管理軟件首先具備的便是測試需求管理。 1.1 需求拆分 傳統(tǒng)的項目管理流程中,需求往往以需求規(guī)模說明書的形式呈現(xiàn)。需求規(guī)格說明書比較全面,但缺點是沒有拆分為需求點,無法實現(xiàn)對某一個具體的功能點的跟蹤。因此在我們設計的測試管理工具中,需求是以需求功能點的形式呈現(xiàn)。這樣有利于針對每一個功能點撰寫測試用例,并進行測試的跟蹤管理。 大模塊拆成小需求,小需求拆成需求點,拆分之后,一層層的分級管理便是必不可少的了。為了適應日益復雜的需求和變化響應,需求的模塊還需要實現(xiàn)無限級的劃分,這樣可以形成一顆樹狀結(jié)構(gòu),無論從瀏覽還是管理上都更為靈活和方便。 1.2 需求管理 有了模塊之后,緊接著需要實現(xiàn)的便是測試需求的管理。我們需要一個界面來錄入需求,常見的字段包括:標題、描述、優(yōu)先級等。另外也可以對需求進行修改,刪除等操作。 1.3 需求搜索 實現(xiàn)了基本的需求維護功能之后,我們還需要實現(xiàn)需求的搜索功能,這樣方便我們找到自己想要的需求。 二、測試用例管理 好,我們現(xiàn)在有了測試需求,我們可以為每一個需求撰寫測試用例了。測試用例的維護涉及到模塊劃分、測試用例維護、導入導出和搜索等功能。 2.1用例模塊劃分 類似于需求的模塊維護,用例也需要通過模塊的劃分來維護用例。在我們設計的軟件中,測試用例的模塊和需求的模塊式分開的。讀者肯定會問,為什么還要為用力維護一套模板呢?為什么不重用需求的模塊劃分呢?這是因為在實際項目中,需求是從用戶和產(chǎn)品的角度來看,需求更多的是幫助用戶如何達成一個操作,實現(xiàn)一個功能。但是用例設計不止要考慮需求,還需要考慮一些異常情況來設計用例,為用例單獨開設模塊管理不會影響到原有的需求管理部分。 2.2用例的維護 下面我們要實現(xiàn)的便是測試用例的基本添加,編輯等操作。這個功能在大多有測試用例管理的工具中都會實現(xiàn),但需要特別說明的是,在絕大多數(shù)的管理工具中,測試用例的步驟是沒有分開的,每一步的預期甚至也是混在一個字段中。其實這樣并不可科學,不僅會降低用例執(zhí)行的粒度,還會影響后續(xù)的一些數(shù)據(jù)生成,至于是生成什么樣的數(shù)據(jù),先在這里 賣個關子,后面解釋:-)。在我們設計的系統(tǒng)中,用例的步驟和每步的預期是完全分開的。 2.3 用例的導入導出 目前很多公司還是在使用Excel書寫和保存測試用例,如果一家公司準備采用一套測試管理系統(tǒng),將這些用例手工導入將是一項繁重的工作。 因此測試管理工具需要能夠?qū)xcel里面的用例導入到系統(tǒng),同樣,也能夠?qū)y試用例導出為Excel格式的文件。 從數(shù)據(jù)庫導出Excel的功能還是比較好實現(xiàn)的,Excel的導入功能方面,筆者設計的思路是可以通過excel的VBA編程自動實現(xiàn)數(shù)據(jù)的獲取,并且可以更新回到系統(tǒng)中,這樣會更加方便快捷。目前正在研究摸索中。 2.4 用例搜索功能 同需求的搜索功能,我們同樣也需要對測試用例進行方便的檢索,以便找到自己想要用到的測試用例。 三、測試套件管理 有了測試用例之后,緊接著一個問題會產(chǎn)生,那是如何組織維護這些用例。除了上面所說的模塊功能、導入導出和搜索之外,測試套件功能也可以非常方便的幫助測試人員來組織整理自己的測試用例。 測試套件(Test Suite)可能是一個分歧比較多一個概念,在我們看來,測試套件是一個集合,可以方便的將某一些用例按照某個特征組織在一起,方便后續(xù)的管理和維護。因此從這個角度來實現(xiàn)測試套件的功能包括測試套件的創(chuàng)建、關聯(lián)測試用例、測試套件的瀏覽維護等功能,不再細述。 四、測試版本管理 在目前的軟件開發(fā)流程中,代碼的版本控制已經(jīng)得到了普遍的應用。 而由此我們可以引申出測試版本這個概念。 一個測試版本可以是對應一個Build,也可以對應一個時間點,測試版本的概念很重要,通過它我們可以明確我們目前測試的范疇,知曉我們需要執(zhí)行哪些測試 用例。同時開發(fā)人員在修復bug的時候,也可以明確當前的修復工作會影響到哪個版本。 4.1 版本和需求、bug的關聯(lián) 首先我們需要實現(xiàn)的便是測試版本和需求、bug的關聯(lián)。也是我們在創(chuàng)建一個測試版本的時候,需要確定這個版本都完成了哪些需求,解決了哪些bug,這樣界定了我們測試的范疇。下圖是我們設計的系統(tǒng)中實現(xiàn)的創(chuàng)建版本時,需求和bug的關聯(lián)頁面。 4.2 版本和源代碼管理系統(tǒng)的集成 一個版本肯定對應到源代碼管理系統(tǒng)中的某一個路徑,一般是對應到類似tags/xxx.1.0.build1類似的 目錄。細心的讀者可能已經(jīng)注意到,我們上面圖中的源代碼和存儲地址是以文本框的形式呈現(xiàn)的。這也是我們正在計劃實現(xiàn)的一個功能,是源代碼的版本可以自動 從源代碼管理軟件中獲取。 比如我可以從Subversion的某一個路徑中獲得對應的代碼版本,這樣可以將測試管理系統(tǒng)和代碼管理系統(tǒng)進行有機的結(jié)合。
相關推薦
性能測試之測試環(huán)境搭建的方法軟件測試是從什么時候開始被企業(yè)所重視的呢?Android自動化測試框架有哪些?有什么用途?什么樣的項目適合做自動化?自動化測試人員應具備怎樣的能力?幾大市面主流性能測試工具測評軟件測試基本概念是怎么來的?軟件測試生命周期的形成歷經(jīng)了什么?一文幫助理清性能測試中壓力、負載測試之間的關系在軟件測試中缺陷是如何定義的?缺陷等級的評定標準是什么?為什么要進行自動化測試?自動化測試發(fā)展的怎么樣了?如何對微信小程序進行自動化測試?什么是性能測試原則?對應到服務器資源監(jiān)控的指標是哪些?接口測試哪些地方容易出現(xiàn)代碼漏洞?代碼漏洞該如何解決?軟件測試的目的是什么?軟件的可交付性和實施周期對軟件測試有影響嗎?自動化測試的行業(yè)現(xiàn)狀是怎樣的?未來的發(fā)展方向在哪?性能測試實施方案如何制定?性能測試具體實施過程是怎么樣的?自動化測試很難,那么軟件測試為什么要堅持自動化呢?
相關產(chǎn)品最新發(fā)布性能測試之測試環(huán)境搭建的方法 2020/7/21 15:39:32軟件測試是從什么時候開始被企業(yè)所重視的呢? 2020/7/17 9:09:11Android自動化測試框架有哪些?有什么用途? 2020/7/17 9:03:50什么樣的項目適合做自動化?自動化測試人員應具備怎樣的能力? 2020/7/17 8:57:06幾大市面主流性能測試工具測評 2020/7/17 8:52:11RPA機器人能夠快速響應企業(yè)需求,是怎么做到的? 2020/7/17 8:48:05Bug可以真正消滅嗎?為什么? 2020/7/17 8:43:03軟件測試基本概念是怎么來的?軟件測試生命周期的形成歷經(jīng)了什么? 2020/7/16 9:11:10熱門文章
常見的移動App Bug??崩潰的測試用例設計QC使用說明如何用Jmeter做壓力測試APP壓力測試入門教程移動app測試中的主要問題使用JMeter進行HTTP負載測試jenkins+testng+ant+webdriver持續(xù)集成測試2017軟件測試面試題及答案(一)
熱門標簽 |