王明珠
摘要:隨著科學(xué)技術(shù)的不斷發(fā)展,對軟件質(zhì)量也提出更高的要求。而軟件質(zhì)量的保證主要得益于有效的測試管理,以往軟件測試過程中主要集中在軟件編碼測試方面,忽視對軟件項目開發(fā)的全過程進(jìn)行分析。對此要求對復(fù)雜的軟件測試項目構(gòu)建完善的測試管理流程,從軟件測試管理中促進(jìn)軟件應(yīng)用質(zhì)量的進(jìn)一步提高。文章主要對軟件測試管理的基本概述、P-TMS軟件測試管理系統(tǒng)的研究設(shè)計以及所應(yīng)用的關(guān)鍵技術(shù)進(jìn)行探析。
關(guān)鍵詞:軟件測試管理;過程;關(guān)鍵技術(shù)
1 引言
在軟件大規(guī)模開發(fā)的背景下,軟件測試管理工作也面臨較大的工作量與技術(shù)難題。據(jù)美國質(zhì)量保證研究所相關(guān)數(shù)據(jù)研究發(fā)現(xiàn),相比編碼前的缺陷修改,軟件編碼完成后修改其中缺陷所涉及的成本將提高10倍左右,若產(chǎn)品處于交付狀態(tài)并需進(jìn)行修改將為交付前缺陷修改成本10倍左右,充分說明以過程為基礎(chǔ)的軟件測試管理的重要性。這就要求測試工作管理不斷加強(qiáng),引用先進(jìn)的技術(shù)手段,保證軟件質(zhì)量的提高。
2 軟件測試管理的基本概述
2.1 軟件測試管理的內(nèi)容與目標(biāo)
軟件測試管理的實質(zhì)在于跟蹤與管理各測試階段中的相關(guān)計劃與流程,并將測試管理的相關(guān)結(jié)果向系統(tǒng)研發(fā)人員與管理人員進(jìn)行反饋,同時要求根據(jù)軟件系統(tǒng)中的缺陷生成相應(yīng)的報告。測試管理的內(nèi)容重要包括對過程的測試、對人員的測試以及對工作產(chǎn)品的測試。其中在管理測試過程方面主要考量軟件的應(yīng)用情況與測試是否具備有效性,在此基礎(chǔ)上做好后期測試過程的改進(jìn)。在管理測試人員方面,需對軟件人員的工作狀況等相關(guān)數(shù)據(jù)進(jìn)行分析與收集,判斷是否與預(yù)期測試目標(biāo)相吻合。而在管理工作產(chǎn)品測試方面主要對測試軟件產(chǎn)品進(jìn)行分析與測量并從中獲取能夠為決策提供參考的數(shù)據(jù)信息。因此,軟件測試管理的目標(biāo)實質(zhì)是控制與管理整個測試流程,以此保證軟件產(chǎn)品的質(zhì)量。
2.2 軟件測試管理主要概念分析
軟件測試過程中涉及的概念主要包括測試用例、缺陷以及協(xié)同等方面。其中的測試用例可細(xì)化為相關(guān)的數(shù)據(jù)與所得出的結(jié)果,用于判斷測試結(jié)果是否與測試計劃目標(biāo)相吻合,確定軟件應(yīng)用程序中是否存在影響正常運行的問題。而缺陷的概念,很多研發(fā)人員往往以Bug代指軟件開發(fā)過程中存在的問題,從狹義角度分析指為由程序編寫過程產(chǎn)生的問題,而在廣義上認(rèn)為軟件應(yīng)用使用過程中出現(xiàn)的錯誤。而對協(xié)同的概念,根據(jù)以往學(xué)者將其應(yīng)用于計算機(jī)中的定義為對空間分布與時間分離支持的同時,使軟件各部分共同合作。
3 以P-TMS為例的軟件測試管理系統(tǒng)分析
P-TMs軟件測試管理系統(tǒng)中的相關(guān)角色主要包括軟件項目負(fù)責(zé)人、系統(tǒng)分析人員、測試設(shè)計人員、軟件開發(fā)人員以及用戶等內(nèi)容。利用這種工作模型的優(yōu)勢主要在于可在設(shè)計工作前設(shè)計測試用例,有利于及時發(fā)現(xiàn)軟件設(shè)計中存在的問題等。具體測試過程主要表現(xiàn)在以下幾方面。
3.1 從需求跟蹤管理角度出發(fā)
進(jìn)行需求跟蹤管理過程中所分析的主要為用戶原始需求,其中的測試用例集中所包含的用例具有一定的關(guān)聯(lián)性,且對應(yīng)測試用例往往存在一定的缺陷問題。但值得注意的是許多需求項無需利用測試用例,不必對其跟蹤管理。另外,在需求跟蹤過程中,由于用戶對軟件項目的需求不同階段會存在一定的變化,要求構(gòu)建需求變更流程,具體過程包括對需求變更的申請,在此基礎(chǔ)上制定變更的決策,最后在落實階段需對測試用例重新設(shè)計并修改測試用例庫。
3.2 從測試用例管理角度出發(fā)
軟件測試工作的成敗很大程度上受測試用例管理的影響。具體管理過程中首先需對其組織結(jié)構(gòu)進(jìn)行分析,保證其中的上下級系統(tǒng)、子系統(tǒng)、功能模塊以及測試用例集等設(shè)置合理,通常各功能模塊中往往包含許多功能項,而功能項中集合部分測試用例集,各測試用例集又存在許多測試用例。其次,由于被測軟件項目存在功能相似或同樣的情況,具有同樣的測試要求。對此可引用復(fù)用技術(shù),測試功能項或需求項相同的軟件過程中便可在測試用例庫中尋找對應(yīng)的測試用例完成測試過程。
3.3 從缺陷管理角度出發(fā)
軟件生命周期內(nèi)無論研發(fā)階段或使用階段都存在一定的缺陷問題,要求做好缺陷跟蹤管理工作。軟件項目測試管理中的相關(guān)人員都可對存在Bug向測試主管提交,而測試人員便需做好缺陷狀態(tài)以及解決缺陷問題的相關(guān)數(shù)據(jù)統(tǒng)計,以使項目進(jìn)展情況可被及時掌握。同時,應(yīng)做好項目缺陷的分類,如程序問題、數(shù)據(jù)處理中的錯誤、編碼規(guī)范性問題、接口錯誤、內(nèi)存管理、系統(tǒng)性能等方面,在此基礎(chǔ)上針對每種類型缺陷提出相應(yīng)的解決方案并存檔與缺陷方案庫中,再次出現(xiàn)該類缺陷時便可從方案庫中找到對應(yīng)解決方法。
3.4 從軟件測試度量角度出發(fā)
軟件測試度量主要指量化分析整個軟件測試過程,其通過度量缺陷以及測試執(zhí)行狀態(tài),使缺陷位置得以確定并預(yù)測軟件開發(fā)或使用階段存在的缺陷,以此為依據(jù)制定相應(yīng)的測試計劃,很大程度上保證軟件的可靠性。其中對缺陷的度量需構(gòu)建缺陷的相關(guān)報告以及趨勢圖,而度量執(zhí)行狀態(tài)的相關(guān)指標(biāo)主要包括需求測試、功能測試以及測試用例等方面。
4 關(guān)鍵技術(shù)在軟件測試管理中的應(yīng)用
根據(jù)前文中對P-TMS軟件測試管理系統(tǒng)的分析,在實際設(shè)計測試管理系統(tǒng)過程中需重點做好主要功能模塊的設(shè)計工作。其中在設(shè)計主要功能模塊過程中要求將模塊覆蓋整個測試管理過程中,具體包括項目規(guī)模管理模塊、需求項管理模塊、測試用例模塊、實施計劃模塊、測試用例模塊、管理缺陷的模塊、生成報表與系統(tǒng)整體管理模塊等。而在設(shè)計數(shù)據(jù)庫過程中需根據(jù)相應(yīng)的模塊內(nèi)容,保證各模塊間的相關(guān)數(shù)據(jù)融于數(shù)據(jù)庫系統(tǒng)中。這種設(shè)計測試款力模塊的關(guān)鍵技術(shù)主要體現(xiàn)在以下幾方面。
4.1 狀態(tài)流轉(zhuǎn)技術(shù)的應(yīng)用
狀態(tài)流轉(zhuǎn)技術(shù)的提出主要針對軟件中存在的缺陷問題,設(shè)計過程中考慮到軟件開發(fā)與應(yīng)用的角色以及具體職責(zé)內(nèi)容。同時,在實際處理缺陷中除進(jìn)行狀態(tài)轉(zhuǎn)換中的相關(guān)信息外,其他許多流動信息都具有明顯的缺陷屬性,對此需保證各處理環(huán)節(jié)的缺陷處理都需建立在前一環(huán)節(jié)處理完成的基礎(chǔ)上。
4.2 前置測試的關(guān)鍵技術(shù)應(yīng)用
前文在設(shè)計構(gòu)建測試管理系統(tǒng)過程中應(yīng)用的主要為前置測試技術(shù),其在應(yīng)用過程中主要考慮到軟件在開發(fā)初期便通過測試管理發(fā)現(xiàn)其中存在的問題,避免開發(fā)中缺陷較多,有利于軟件開發(fā)質(zhì)量的提高,也便于后期維護(hù)工作。而除應(yīng)用前置測試技術(shù)外,實際構(gòu)建測試管理系統(tǒng)中也應(yīng)用測試驅(qū)動開發(fā)相關(guān)理念,為各測試管理環(huán)節(jié)提供保障。
4.3 測試信息共享的關(guān)鍵技術(shù)應(yīng)用
軟件測試管理過程中的測試信息共享主要體現(xiàn)在測試用例信息以及缺陷信息的共享。在測試用例信息方面可充分發(fā)揮測試用例庫的作用,要求設(shè)計人員將不同類型的測試用例存儲于測試用例庫中。同時,在設(shè)計測試用例庫中也可引入復(fù)用技術(shù),對需求項或功能相同的測試用例采取直接復(fù)用的方式。另外,在缺陷信息共享方面,可將不同類型的缺陷以及相應(yīng)的分析解決方法存于缺陷方案庫中。使軟件中出現(xiàn)類似缺陷時,可在缺陷方案庫中尋找對應(yīng)的解決方案。
4.4 度量與評估的測試關(guān)鍵技術(shù)應(yīng)用
為使測試過程與效果得到正確評估,可充分發(fā)揮度量與評估及時的應(yīng)用。如前文所述可從三方面完成測試評估,包括度量缺陷、度量測試執(zhí)行情況以及測試的覆蓋情況等。但需注意在度量測試覆蓋情況以及執(zhí)行情況中應(yīng)引入相應(yīng)的覆蓋率指標(biāo)包括測試用例、需求項、功能項以及測試執(zhí)行等覆蓋率。而在度量缺陷中需做好缺陷統(tǒng)計以及缺陷趨勢圖設(shè)計等工作。通過這種定量評估的技術(shù),能夠使軟件設(shè)計與開發(fā)決策提供重要的參考內(nèi)容。
5 結(jié)語
軟件質(zhì)量的保證需充分發(fā)揮軟件測試管理的作用。通過文中基于過程的軟件測試管理系統(tǒng)設(shè)計分析,要求在實際構(gòu)建過程中注重應(yīng)用狀態(tài)流轉(zhuǎn)技術(shù)、前置測試技術(shù)、信息共享以及度量測試過程與效果的相關(guān)技術(shù),并保證測試管理系統(tǒng)中個模塊如項目管理模塊、測試的計劃以及管理缺陷等模塊都可發(fā)揮應(yīng)有的效果,這樣才可有效監(jiān)視測試管理的全過程,為軟件質(zhì)量提供堅實的保障。