如何做好軟件測(cè)試管理?
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2011/8/29 10:29:12 ] 推薦標(biāo)簽:
某甲問道:「測(cè)試做太多的話,會(huì)不會(huì)使得bug解不完?」
某乙回答:「還不簡(jiǎn)單。只要不做測(cè)試,沒有bug.」
上述對(duì)話,反應(yīng)出許多軟件工作人員對(duì)于測(cè)試的想法。對(duì)多數(shù)軟件開發(fā)人員而言,測(cè)試大概是僅次于維護(hù)之外,令人討厭的工作。對(duì)軟件研發(fā)主管來說,測(cè)試是必要之惡:做得不夠后患無窮,做得過多又增加成本,延誤商機(jī)。因此,如何能夠規(guī)畫與執(zhí)行一個(gè)經(jīng)濟(jì)有效的測(cè)試工作,當(dāng)是軟件研發(fā)主管們須研究的一個(gè)課題。
軟件測(cè)試的困難,在于它不僅是產(chǎn)品的測(cè)試,更是產(chǎn)品設(shè)計(jì)程序的檢驗(yàn)。由于關(guān)乎設(shè)計(jì)的測(cè)試,準(zhǔn)則不易尋找,經(jīng)驗(yàn)未必得以再用,他山之石也有應(yīng)用的局限性,因此難度頗高。欲提高測(cè)試的效益,有賴全盤的規(guī)畫,確實(shí)的執(zhí)行,與事后的檢討改進(jìn)動(dòng)作。許多小型軟件研發(fā)單位,對(duì)于軟件測(cè)試并不重視,但從許多稍具規(guī)模的軟件公司均配置常設(shè)測(cè)試人員,乃至于測(cè)試品保部門來看,測(cè)試工作顯然有其學(xué)問與價(jià)值的。
測(cè)試工作沒有佳方法可依循,是因?yàn)椴煌能浖璧臏y(cè)試手段不同。譬如小型軟件與大型系統(tǒng)的做法不同;訂制軟件與軟件包的要求不同;系統(tǒng)軟件的測(cè)試往往無法采用應(yīng)用軟件所使用的技巧;游戲軟件與庫(kù)存系統(tǒng)有其各自需面對(duì)的測(cè)試標(biāo)的。因此,測(cè)試人員必須因應(yīng)軟件的特性與資源的限制,加上過去相關(guān)的經(jīng)驗(yàn),規(guī)畫適合的測(cè)試方式。并隨著經(jīng)驗(yàn)的累積,不斷改進(jìn)作法,才能找出佳的測(cè)試方法。
由此可知,要做好有效的測(cè)試,不只是埋頭苦干而已,它需要良好的管理,使整件工作獲致佳的成果。關(guān)于測(cè)試的管理工作,可從組織、規(guī)畫、執(zhí)行與檢討幾個(gè)角度來探討。以下謹(jǐn)筆者粗淺的經(jīng)驗(yàn)野人獻(xiàn)曝一番,希望提供讀者基本的協(xié)助。
測(cè)試組織之設(shè)計(jì)
由于人性總自認(rèn)為自己的好正確,完全由軟件開發(fā)人員兼任測(cè)試人員,并不值得推薦。實(shí)務(wù)上往往因軟件開發(fā)單位的經(jīng)濟(jì)規(guī)模不夠,使得開發(fā)人員經(jīng)常兼任測(cè)試人員。但若可行,研發(fā)單位應(yīng)盡可能配置專任的測(cè)試人員,尤其是獨(dú)立于開發(fā)小組之外的測(cè)試負(fù)責(zé)人員。盡管是否應(yīng)設(shè)置獨(dú)立測(cè)試小組業(yè)界仍有爭(zhēng)議,許多人甚至以為保障軟件品質(zhì)唯有從改進(jìn)軟件開發(fā)的程序做起,但大部份美國(guó)的軟件公司均設(shè)有獨(dú)立測(cè)試或品保人員乃至于部門,這說明了獨(dú)立測(cè)試仍有其不可搖撼的地位。
許多的軟件研發(fā)單位將測(cè)試視為次等的工作,從而配置次等人員負(fù)責(zé)相關(guān)工作。如此一來,人員無從參與,也缺乏意愿參與測(cè)試工作。結(jié)果軟件品質(zhì)不易度量,研發(fā)的成果常常被不佳的品質(zhì)抵銷,實(shí)為令軟件開發(fā)人員泄氣之事。主管是否能體認(rèn)到軟件測(cè)試的重要性,通常是成功的關(guān)鍵。軟件測(cè)試固然是支持性工作,仍應(yīng)配置合理的資源,以獲取整體之成效。在當(dāng)前的環(huán)境下,給予測(cè)試人員較多的關(guān)注,毋寧是必要的作法。
測(cè)試工作規(guī)畫
測(cè)試工作的規(guī)畫,至少包含兩項(xiàng)要點(diǎn):測(cè)試目標(biāo)的訂定與測(cè)試資源的配置。攻擊需要目標(biāo),測(cè)試亦然。測(cè)試的目的在于找出軟件的問題,提供改進(jìn)之參考。目標(biāo)若不明,測(cè)試人員即不知如何著手。
測(cè)試目標(biāo)的訂定,重要的在于軟件通過的準(zhǔn)則,亦即測(cè)試何時(shí)方可結(jié)束。常見的情形是:軟件開發(fā)的進(jìn)度不斷落后,后剩余的時(shí)間僅有兩個(gè)星期,于是測(cè)試人員的目標(biāo)是把后兩周用完,盡人事聽天命。究竟測(cè)試多完整,隱藏的多少錯(cuò)誤,測(cè)試工作的生產(chǎn)力如何?皆一概不知。反正產(chǎn)品賣出去或上線后有的是時(shí)間改進(jìn)。然而產(chǎn)品銷售后再改進(jìn),成本往往大幅增高,甚至原有開發(fā)人員離職他調(diào),連亡羊補(bǔ)牢都倍感困難。經(jīng)驗(yàn)一再顯示,事前的測(cè)試除錯(cuò)比事后維護(hù)省時(shí)省錢,唯有賣不出去或不能用的軟件例外。
對(duì)于測(cè)試的要求可簡(jiǎn)單區(qū)分為二:一種是通過目標(biāo)所訂之軟件品質(zhì);一種是在既定資源內(nèi)達(dá)到佳成效。前者要求山頭一定要攻下,不達(dá)目的絕不停止。譬如目標(biāo)為單位測(cè)試時(shí)間的錯(cuò)誤發(fā)現(xiàn)率須低于某數(shù)字,若超過了得延長(zhǎng)測(cè)試。此種方式適用于品質(zhì)要求較高的軟件。至于后者則是上市時(shí)間已宣布,無法更改者,其目標(biāo)著重于鏟除嚴(yán)重的錯(cuò)誤。此種測(cè)試較著重測(cè)試的準(zhǔn)備、經(jīng)常對(duì)測(cè)試執(zhí)行與除錯(cuò)設(shè)定時(shí)限與數(shù)量要求,其中容易遵循的準(zhǔn)則即為:重要功能永遠(yuǎn)先測(cè)。這兩類測(cè)試的需求不同,足以影響到測(cè)試的計(jì)劃、測(cè)試的順序與關(guān)心的重點(diǎn)。讀者不可不察。
至于測(cè)試資源配置適當(dāng)性,則是評(píng)估測(cè)試目標(biāo)能否達(dá)成的重要參考指標(biāo)。測(cè)試人員需要合理的測(cè)試資源,譬如要求總研發(fā)人力的20%以上?倳r(shí)程的1/3以上。人力不足,測(cè)試流于形式,時(shí)程過短,找到錯(cuò)誤也來不及除錯(cuò),均不可取。除了測(cè)試在研發(fā)的比重,也需注意測(cè)試工作本身在規(guī)畫管理、規(guī)格個(gè)案訂定、測(cè)試執(zhí)行、回歸測(cè)試、訓(xùn)練準(zhǔn)備工作的人力分配。人員的訓(xùn)練與設(shè)備的安排尤其容易輕忽,需加以注意。不同階段測(cè)試的資源配置,也必須加以考量,如此可避免測(cè)試集中于功能測(cè)試,忽略系統(tǒng)測(cè)試。這些工作的適切安排,有助于協(xié)助測(cè)試工作時(shí)時(shí)都執(zhí)行重要,也有效的測(cè)試。
測(cè)試執(zhí)行與管理
測(cè)試工作執(zhí)行在管理上,首先需使測(cè)試與開發(fā)人員了解輕重緩急。測(cè)試人員常常不考慮測(cè)試的效果,而只依照測(cè)試的方便性來進(jìn)行測(cè)試。譬如軟件有十大模塊,每一模塊有50個(gè)測(cè)試個(gè)案,于是他從第一個(gè)模塊的第一個(gè)個(gè)案開始測(cè),測(cè)完一整個(gè)模塊,再進(jìn)行第二個(gè)模塊的測(cè)試,執(zhí)行全部完成或無法進(jìn)行為止。事實(shí)上,測(cè)試應(yīng)從重要且常用的項(xiàng)目測(cè)起。
開發(fā)人員的除錯(cuò),則往往從好改的改起。于是100個(gè)錯(cuò)誤改了90個(gè),系統(tǒng)主要的缺陷仍為克服。測(cè)試管理人員需特別注意此事,確保測(cè)試工作的效率。
進(jìn)行測(cè)試管理的好處在于隨時(shí)可掌握狀況,并因應(yīng)需求及時(shí)調(diào)整測(cè)試策略。譬如測(cè)試一段時(shí)間后,發(fā)現(xiàn)某子系統(tǒng)的問題特別多,即可調(diào)整人力,增強(qiáng)該部份的測(cè)試;蚴悄承┤说臏y(cè)試績(jī)效較差,則可調(diào)整工作之分配,以求整體效果。當(dāng)然,這些數(shù)據(jù)的取得有賴相關(guān)信息的搜集,包括數(shù)量與時(shí)間之信息。如果可行,可記錄不同測(cè)試工作耗用的人力時(shí)數(shù),計(jì)算耗用成本,以便未來進(jìn)行測(cè)試規(guī)劃時(shí)擁有更精確的參考數(shù)據(jù)。
進(jìn)行相關(guān)資料的統(tǒng)計(jì)與分析,好運(yùn)用工具來幫忙,以節(jié)省人力并增進(jìn)效果。如果市面已有的測(cè)試管理工具符合需求,也可徑行采用。測(cè)試結(jié)果的統(tǒng)計(jì)資料,不妨公布在大家的眼前,使得測(cè)試成果可為大家了解,亦能促進(jìn)工作同仁求取更佳的成績(jī)。附圖所顯示為一簡(jiǎn)單的統(tǒng)計(jì)圖表,顯示每周的測(cè)試成果、除錯(cuò)成果,與產(chǎn)品殘存的問題量,可協(xié)助主管決定測(cè)試終止及發(fā)行產(chǎn)品的時(shí)間。
相關(guān)推薦

最新發(fā)布
性能測(cè)試之測(cè)試環(huán)境搭建的方法
2020/7/21 15:39:32軟件測(cè)試是從什么時(shí)候開始被企業(yè)所重視的呢?
2020/7/17 9:09:11Android自動(dòng)化測(cè)試框架有哪些?有什么用途?
2020/7/17 9:03:50什么樣的項(xiàng)目適合做自動(dòng)化?自動(dòng)化測(cè)試人員應(yīng)具備怎樣的能力?
2020/7/17 8:57:06幾大市面主流性能測(cè)試工具測(cè)評(píng)
2020/7/17 8:52:11RPA機(jī)器人能夠快速響應(yīng)企業(yè)需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消滅嗎?為什么?
2020/7/17 8:43:03軟件測(cè)試基本概念是怎么來的?軟件測(cè)試生命周期的形成歷經(jīng)了什么?
2020/7/16 9:11:10