6、什么是測(cè)試策略?

  測(cè)試策略描述測(cè)試工程的總體方法和目標(biāo)。描述目前在進(jìn)行哪一階段的測(cè)試(單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試)以及每個(gè)階段內(nèi)在進(jìn)行的測(cè)試種類(功能測(cè)試、性能測(cè)試、覆蓋測(cè)試等)。

  測(cè)試策略的制定主要包含三個(gè)方面的內(nèi)容:

 。1)確定測(cè)試過程要使用的測(cè)試技術(shù)和工具;

 。2)制定測(cè)試啟動(dòng)、停止、完成標(biāo)準(zhǔn);

  (3)進(jìn)行風(fēng)險(xiǎn)分析和應(yīng)對(duì)方案。例如測(cè)試與外部接口或者模擬物理?yè)p壞、安全性威脅。測(cè)試計(jì)劃關(guān)鍵的一步是將軟件分解成單元,按照需求編寫測(cè)試計(jì)劃。

  7、代碼會(huì)審是如何進(jìn)行的?

  在研發(fā)小組將所開發(fā)的程序經(jīng)驗(yàn)證后,提交測(cè)試組后,測(cè)試實(shí)施工作基本開始了。這個(gè)時(shí)候,測(cè)試人員要仔細(xì)閱讀有關(guān)資料,包括規(guī)格說明、設(shè)計(jì)文檔、使用說明書及在設(shè)計(jì)過程中形成的測(cè)試大綱、測(cè)試內(nèi)容及測(cè)試的通過準(zhǔn)則,全面熟悉系統(tǒng),編寫測(cè)試計(jì)劃,設(shè)計(jì)測(cè)試用例,作好測(cè)試前的準(zhǔn)備工作。為了保證測(cè)試的質(zhì)量,我們一般測(cè)試過程分成幾個(gè)階段,即:代碼審查、單元測(cè)試、集成測(cè)試和驗(yàn)收測(cè)試。

  代碼會(huì)審是由一組人通過閱讀、討論和爭(zhēng)議對(duì)程序進(jìn)行靜態(tài)分析的過程。會(huì)審小組由組長(zhǎng),2~3名程序設(shè)計(jì)和測(cè)試人員及程序員組成。會(huì)審小組在充分閱讀待審程序文本、控制流程圖及有關(guān)要求、規(guī)范等文件基礎(chǔ)上,召開代碼會(huì)審會(huì),程序員逐句講解程序的邏輯,并展開熱烈的討論甚至爭(zhēng)議,以揭示錯(cuò)誤的關(guān)鍵所在。實(shí)踐表明,程序員在講解過程中能發(fā)現(xiàn)許多自己原來沒有發(fā)現(xiàn)的錯(cuò)誤,而討論和爭(zhēng)議則進(jìn)一步促使了問題的暴露。例如,對(duì)某個(gè)局部性小問題修改方法的討論,可能發(fā)現(xiàn)與之有牽連的甚至能涉及到模塊的功說明、模塊間接口和系統(tǒng)總結(jié)構(gòu)的大問題,導(dǎo)致對(duì)需求定義的重定義、重設(shè)計(jì)驗(yàn)證,大大改善了軟件的質(zhì)量。

  代碼會(huì)審盡管需要一定的成本,但是在大型軟件中,是必不可少的。

  8、回歸測(cè)試中未解決的缺陷如何處理?

  軟件的后期測(cè)試是一個(gè)反復(fù)回歸的工作,有些問題可能修改多次才能解決,尤其是那些在開發(fā)環(huán)境下不存在的問題,這些問題很容易被程序員忽視,拖到后才解決。因此大部分回歸測(cè)試是和開發(fā)人員反復(fù)配合解決那些上次測(cè)試中沒有解決的缺陷。

  這里重點(diǎn)討論的是后一次回歸測(cè)試后,仍然發(fā)現(xiàn)有些缺陷沒有解決時(shí)測(cè)試經(jīng)理應(yīng)該如何做。在管理不規(guī)范的組織中,由于進(jìn)度或者其它方面的壓力,開發(fā)工作已經(jīng)停止,通常會(huì)將這些問題置之不理。正確的做法時(shí)把這些沒有解決的問題形成一個(gè)未解決缺陷報(bào)告,然后召開項(xiàng)目會(huì)議進(jìn)行討論,對(duì)不同的問題采取不同的處理方式:

 。1)嚴(yán)重性的問題:有些問題較難解決,往往會(huì)被拖到后,如果這類缺陷導(dǎo)致軟件功能發(fā)生障礙,則必須解決,這也是質(zhì)量控制的職責(zé)所在;

 。2)功能性的問題:可以考慮升級(jí)時(shí)解決;

 。3)一般性問題:不影響使用,可以不解決或者升級(jí)解決。

  這類項(xiàng)目會(huì)議通常需要技術(shù)總監(jiān)或者更高級(jí)別的人來參加。后,需要對(duì)終討論沒有解決的缺陷列表進(jìn)行簽字并存檔,形成一個(gè)基線。特別要注意的某些缺陷是否修改不能由程序員或者測(cè)試人員來決定,這樣有可能帶來嚴(yán)重的后果??導(dǎo)致缺陷失控,終形成沒有人對(duì)質(zhì)量負(fù)責(zé)的局面。

  9、狀態(tài)為已經(jīng)修改的缺陷沒有修改怎么辦?

  首先要對(duì)這類缺陷進(jìn)行分析:

 。1)有些問題在開發(fā)環(huán)境下沒有重現(xiàn),而開發(fā)人員迫于進(jìn)度壓力,往往會(huì)把它標(biāo)記為已經(jīng)修改。這種條件下測(cè)試人員應(yīng)該和開發(fā)人員進(jìn)行直接溝通;

  (2)有些問題測(cè)試人員沒有描述清楚,開發(fā)人員認(rèn)為問題不存在也可能把問題標(biāo)記為已經(jīng)修改(正確的做法是標(biāo)記問題為商討或者不存在狀態(tài))。測(cè)試人員應(yīng)該清晰的描述問題,減少這類問題的發(fā)生,尤其要描述清楚運(yùn)行環(huán)境以及缺陷的重現(xiàn)步驟;