軟件測試可以說是IT開發(fā)過程中非常重要而不可或缺的工作環(huán)節(jié)。中培偉業(yè)《軟件自動化測試與持續(xù)集成實踐》培訓(xùn)專家劉老師指出,要做好軟件測試,離不開科學(xué)合理的測試管理。劉老師在這里對測試管理的含義以及其相關(guān)的構(gòu)成進行了詳細介紹。
一、什么是測試管理?
測試管理是一種管理應(yīng)用測試資產(chǎn)和成果的方法,其中不但包括管理測試需求、測試計劃、測試文檔、測試用例、測試腳本和測試結(jié)果等測試結(jié)果,而且包括管理測試過程資產(chǎn),從而使這些資產(chǎn)和成果易于使用和能被重復(fù)使用。測試管理的目的是在較短的時間內(nèi)實現(xiàn)高質(zhì)量的應(yīng)用,完善的組織結(jié)構(gòu)、通力協(xié)作和信息共享是測試管理扎根的基礎(chǔ)。規(guī)劃、設(shè)計和運行測試需要消耗相當(dāng)大的工作量,測試資產(chǎn)需要能夠在整個應(yīng)用生命周期被重復(fù)使用,當(dāng)某員工離開團隊,其測試信息能完整地保留下來,因此,測試管理的整體目標(biāo)是允許團隊在整個應(yīng)用生命周期中,計劃、開發(fā)、執(zhí)行并評估所有的測試活動,這不僅包括測試工作中的所有工作,跟蹤測試資產(chǎn)中的依賴關(guān)系和相互關(guān)聯(lián),還包括,也是最重要的,是對質(zhì)量目標(biāo)進行定義、測量和跟蹤。
二、測試管理包括哪些方面?
測試管理的范圍非常廣泛,包括與測試相關(guān)的所有活動,例如:測試規(guī)劃、測試策劃、測試需求分析、測試設(shè)計、測試實施、配置管理、供應(yīng)商管理、環(huán)境管理、測試度量、測試流程、標(biāo)準(zhǔn)的制定、測試評審、測試監(jiān)控、測試過程改進、產(chǎn)品質(zhì)量評價等。
測試規(guī)劃:
測試規(guī)劃是每年年初根據(jù)年度需求規(guī)劃和產(chǎn)品發(fā)布計劃確定本年度的測試服務(wù)范圍,制定本年度測試計劃,從而進行測試排期,包括測試項目排期、測試資源排期、測試環(huán)境排期、測試工具排期等。根據(jù)年度測試計劃確定人員配置方案、外部采購方案、技術(shù)支撐方案等,進而對內(nèi)部人員進行相應(yīng)培訓(xùn)或招聘相應(yīng)職位人員,組建相應(yīng)的團隊,并對測試項目所需的新的測試技術(shù)、測試工具的提前學(xué)習(xí)、預(yù)研。
測試策劃:
測試策劃是根據(jù)已識別的風(fēng)險和已定義的測試策略來定義測試方案,并建立和維護具有充分依據(jù)的計劃來實施和管理測試活動。測試策劃包括根據(jù)產(chǎn)品風(fēng)險評估的結(jié)果和已定義的測試策略來定義測試方案。根據(jù)風(fēng)險的優(yōu)先級和分類,確定要測試的產(chǎn)品需求以及如何進行測試。目的是實現(xiàn)對最高風(fēng)險的系統(tǒng)組件最大可能的覆蓋。
測試需求分析:
根據(jù)需求文檔和需求規(guī)格說明書進行測試需求分析,完成后需組織相關(guān)人員進行評審,包括業(yè)務(wù)流程測試需求分析、功能測試需求分析、性能測試需求分析等。
測試設(shè)計:
根據(jù)測試需求分析結(jié)果,設(shè)計各測試階段使用的測試用例和測試數(shù)據(jù)。測試設(shè)計一般與軟件開發(fā)活動同步進行,其結(jié)果可以作為各階段測試計劃的附件提交評審。測試設(shè)計的另一項內(nèi)容是回歸測試設(shè)計,即確定回歸測試的用例集。對于測試用例的修訂部分,也要求進行重新評審。
測試實施:
使用測試用例運行程序,將獲得的運行結(jié)果與預(yù)期結(jié)果進行比較和分析,記錄、跟蹤和管理軟件缺陷,最終得到測試報告。
配置管理:
配置管理是通過技術(shù)或行政手段對軟件產(chǎn)品及其開發(fā)過程和生命周期進行控制、規(guī)范的一系列措施。配置管理的目標(biāo)是記錄軟件產(chǎn)品的演化過程,確保軟件開發(fā)者在軟件生命周期中各個階段都能得到精確的產(chǎn)品配置。
供應(yīng)商管理:
測試供應(yīng)商管理包括選擇和確定測試供應(yīng)商、建立測試供應(yīng)商協(xié)議,執(zhí)行測試供應(yīng)商協(xié)議、驗收測試供應(yīng)商交付的工作產(chǎn)品以及對測試供應(yīng)商績效的評價考核。測試組織應(yīng)根據(jù)自身資源和資金情況,確定采購測試服務(wù)的策略、需求和采購類型,并建立測試供應(yīng)商管理流程,根據(jù)不同項目的要求,在項目策劃早期確定項目采購的測試服務(wù)。
環(huán)境管理:
環(huán)境管理是為了建立并維持一個適當(dāng)、可用的軟件運行環(huán)境,包括測試數(shù)據(jù),可以以一個可控的和可重復(fù)的方式開展相關(guān)的測試工作。測試環(huán)境的管理活動主要是對軟件測試活動所依托的計算機軟硬件的維護和管理,同時還負責(zé)對測試環(huán)境的版本管理、測試環(huán)境的數(shù)據(jù)管理、測試環(huán)境規(guī)劃、測試環(huán)境調(diào)配以及測試過程中的技術(shù)測試等工作。
測試度量:
測試度量是測試組織識別、收集、分析和使用各種度量手段,評估測試過程的有效性和高效性、測試人員的生產(chǎn)率、產(chǎn)品質(zhì)量、以及測試過程改進的結(jié)果。測試組織開發(fā)和維持測試度量能力,用于管理上的需要。
?測試流程、標(biāo)準(zhǔn)的制定:
測試流程、標(biāo)準(zhǔn)的制定是建立和維護一套可用的組織測試過程資產(chǎn)(例如,一個標(biāo)準(zhǔn)的測試生命周期)和工作環(huán)境標(biāo)準(zhǔn),并與開發(fā)生命周期集成同步,以確保測試活動在項目早期階段即可參與,同時,為不同的項目運用標(biāo)準(zhǔn)測試過程資產(chǎn)提供裁剪指引。
測試評審:
測試評審是系統(tǒng)地通過相關(guān)人員檢驗工作產(chǎn)品,驗證選定的工作產(chǎn)品是否滿足其指定要求、并在早期有效地移除工作產(chǎn)品中的缺陷。同時,通過對工作產(chǎn)品更好地了解,以預(yù)防缺陷的注入。評審?fù)ǔS缮贁?shù)經(jīng)驗豐富的工程人員執(zhí)行。評審的對象,可以是跟測試相關(guān)的任何產(chǎn)出物,如測試計劃、測試方案、測試需求分析、測試案例、測試準(zhǔn)入/準(zhǔn)出等。
測試監(jiān)控:
測試監(jiān)控是將測試計劃中的測試工作產(chǎn)品、任務(wù)及其屬性、工作量、成本、進度與其實際狀態(tài)進行對比。產(chǎn)品質(zhì)量監(jiān)控是通過一些監(jiān)控指標(biāo)進行監(jiān)控,例如,緩解的產(chǎn)品風(fēng)險、發(fā)現(xiàn)的缺陷數(shù)、未關(guān)閉的缺陷數(shù)和測試出口準(zhǔn)則狀態(tài)。測試項目風(fēng)險管理是測試監(jiān)控的重要工作,目的是了解測試進展和產(chǎn)品質(zhì)量,以便在測試進展與計劃或產(chǎn)品質(zhì)量與預(yù)期結(jié)果發(fā)生重大偏差時采取適當(dāng)?shù)募m正措施。測試監(jiān)控包括對測試進展和產(chǎn)品質(zhì)量的監(jiān)控。
測試過程改進:
測試過程改進是通過持續(xù)收集當(dāng)前組織的過程資產(chǎn)改進建議、識別新的技術(shù)(如工具或方法)、甄選適合的可重用組件,在組織中全面應(yīng)用和部署,促使源于組織業(yè)務(wù)目標(biāo)的產(chǎn)品質(zhì)量和過程能力目標(biāo)有效達成。測試過程的持續(xù)改進,應(yīng)貫穿于項目和整個組織,其量化管理可以持續(xù)提升組織的過程能力。
產(chǎn)品質(zhì)量評價:
產(chǎn)品質(zhì)量評價是對產(chǎn)品質(zhì)量評估的量化模型,以此來評估、預(yù)測產(chǎn)品是否達到特定的產(chǎn)品質(zhì)量目標(biāo),其總體目標(biāo)是促進滿足需要和欲望的客戶和最終用戶的產(chǎn)品質(zhì)量。產(chǎn)品質(zhì)量評價不但包括確定項目的產(chǎn)品質(zhì)量的量化目標(biāo)和制定計劃去實現(xiàn)這些目標(biāo),而且還包括確定質(zhì)量指標(biāo)評價(工作)的產(chǎn)品質(zhì)量。
三、做好測試管理主要應(yīng)該考慮以下幾個方面:
?做好年度測試規(guī)劃;
?盡早開始測試管理活動;
?盡早識別測試風(fēng)險,做好防范;
?定義并執(zhí)行靈活的測試流程;
?有效的測試監(jiān)控過程;
?獎罰分明的測試度量和績效考核;
?使用基于需求的測試;
?迭代化測試;
?重用測試工件;
?協(xié)調(diào)遠程測試資源;
?有效的溝通狀態(tài);
?關(guān)注測試目標(biāo)和結(jié)果;
?通過自動化來節(jié)約時間。