楊麗波
(淮安信息職業(yè)技術(shù)學(xué)院, 江蘇淮安,223003)
淺析軟件測試管理
楊麗波
(淮安信息職業(yè)技術(shù)學(xué)院, 江蘇淮安,223003)
現(xiàn)階段軟件產(chǎn)品的應(yīng)用領(lǐng)域越來越廣,軟件的質(zhì)量越來越得到人們的重視,軟件測試是保證軟件質(zhì)量的重要環(huán)節(jié),更好的規(guī)劃和管理軟件測試工作,提高測試效率是測試人員的首要任務(wù)。本文淺析了現(xiàn)階段軟件測試管理的方法和理論。
軟件測試管理;軟件質(zhì)量
隨著計算機(jī)技術(shù)的高速發(fā)展,軟件產(chǎn)品的應(yīng)用領(lǐng)域越來越廣,軟件的質(zhì)量也越來越得到重視,進(jìn)行軟件測試,為了充分發(fā)揮軟件測試過程的作用,發(fā)現(xiàn)更多的軟件缺陷,我們要對軟件測試的過程進(jìn)行科學(xué)有效的管理。
測試組織管理的主要工作是組織和管理測試小組,將復(fù)雜的工作分配給測試工程師負(fù)責(zé),他們具有獨立的測試技能,可以進(jìn)行測試的計劃、設(shè)計、編寫測試用例、使用先進(jìn)的測試工具搭建測試環(huán)境等等,簡單的測試任務(wù)可以由初級測試人員負(fù)責(zé)。安排測試任務(wù)以后,根據(jù)任務(wù)估計測試工作量,指明應(yīng)該交付的文檔,明確測試環(huán)境、測試工具,并進(jìn)行測試設(shè)計等。
2.1 軟件測試過程劃分
軟件測試管理最主要的部分是對測試的過程進(jìn)行管理,那么首先要清楚軟件測試過程包括的幾個階段。
①單元測試:單元測試是針對每個單元進(jìn)行的測試。主要采用白盒測試方法,檢測程序的內(nèi)部結(jié)構(gòu)、數(shù)據(jù)的定義和使用是否正確。
②集成測試:集成測試是對于通過了單元測試的多個單元,根據(jù)系統(tǒng)設(shè)計的結(jié)構(gòu)進(jìn)行組裝,對組裝后的部分系統(tǒng)和整個系統(tǒng)進(jìn)行測試,即集成測試,目的是檢測模塊間的接口的功能是否正確實現(xiàn)了。
③確認(rèn)測試:確認(rèn)測試也稱有效性測試,主要目的是檢測軟件系統(tǒng)是否按照用戶預(yù)定的要求工作,驗證軟件的功能和性能符合用戶要求的程度。
④系統(tǒng)測試:系統(tǒng)測試主要檢測軟件產(chǎn)品和計算機(jī)系統(tǒng)中其他的硬件、軟件以及用戶是否能夠協(xié)調(diào)一致的配合工作,發(fā)現(xiàn)其中不一致的因素從而解決問題。
⑤驗收測試:驗收測試由用戶和開發(fā)人員共同參與,開發(fā)人員邊操作邊演示系統(tǒng)的功能實現(xiàn)方法和性能特征,用戶依照需求規(guī)格說明書對系統(tǒng)各項功能、性能進(jìn)行檢驗。
2.2 軟件測試過程模型
可以用軟件測試過程模型來規(guī)劃軟件測試的各個階段。這樣有利于測試人員對整個測試過程的理解、促進(jìn)小組成員交流和對測試執(zhí)行過程的控制。下面簡要介紹幾種常用的軟件測試過程模型。
①V模型
V模型可以清楚的顯示測試過程的各階段和開發(fā)過程各階段的對應(yīng)關(guān)系。但是僅僅把測試作為編碼之后對程序進(jìn)行排錯的過程,而忽視了對需求分析、系統(tǒng)設(shè)計等過程的成果進(jìn)行驗證和確認(rèn)。
②X模型
X模型中包含了測試設(shè)計的步驟,并且彌補(bǔ)了V模型的一些缺陷,如交接以及經(jīng)常性的集成等問題。但是X模型沒有被文檔化,并且開發(fā)慢、成本高。
③W模型
W模型將測試的過程與開發(fā)各階段一一對應(yīng),有利于盡早著手準(zhǔn)備和執(zhí)行測試,加快整個項目進(jìn)度。但是W模型將開發(fā)和測試等活動視為串行,無法支持含迭代關(guān)系的開發(fā)模型。
④H模型
H模型將開發(fā)和測試看做可以并發(fā)實現(xiàn)的過程,揭示了軟件測試是一個獨立的流程,在任何階段只要達(dá)到了測試就緒點就可以開始執(zhí)行測試。
2.3 軟件測試過程管理基本內(nèi)容
軟件測試過程管理在各個階段的具體內(nèi)容不同,但在任意階段,測試任務(wù)的最終完成都要經(jīng)過計劃、設(shè)計、執(zhí)行、結(jié)果分析、總結(jié)等步驟,測試過程管理也就集中在這些步驟。·
①測試準(zhǔn)備。組建測試小組,選舉測試組長,召開測試計劃討論會,進(jìn)行人員培訓(xùn)等。
②測試計劃。測試計劃指導(dǎo)整個測試工作的實施,主要確定測試范圍、測試方法和策略、需采用的資源和工具、進(jìn)行進(jìn)度安排、風(fēng)險應(yīng)急計劃,并撰寫測試計劃文檔。
③測試設(shè)計。測試設(shè)計是建立在測試計劃之上的,根據(jù)測試計劃選擇的測試方法和策略設(shè)計具體的測試用例集合。
④測試執(zhí)行。搭建測試環(huán)境,準(zhǔn)備測試數(shù)據(jù),開始執(zhí)行測試。若采用自動化測試,可以直接借助測試工具執(zhí)行測試腳本,并記錄測試過程數(shù)據(jù)和測試結(jié)果,管理相對簡單。若采用手工操作測試,管理相對復(fù)雜些。
⑤測試結(jié)果分析。測試執(zhí)行結(jié)束后,可以通過人工或者借助工具對測試結(jié)果進(jìn)行分析,來確定產(chǎn)品的質(zhì)量,對產(chǎn)品是否需改進(jìn)或者發(fā)布提供支持,并撰寫測試報告文檔。
軟件測試中的資源管理分為人力資源管理和環(huán)境資源管理。
人力資源是指測試人員的數(shù)量和測試的技能。通常如果測試自動化的程度較高,則需較少的測試人員,反之則需投入較多的測試人員。對人力資源需求的估計依賴于測試工作量和測試人員的能力水平。應(yīng)保證有一定的人員余量和各個部分之間的平衡協(xié)調(diào)。
環(huán)境資源指的是建立測試環(huán)境包括的硬件資源和軟件資源。硬件即為能夠支持操作系統(tǒng)和測試工具運行的平臺,軟件資源包括軟件測試工具、操作系統(tǒng)和被測軟件產(chǎn)品等等。關(guān)鍵任務(wù)是規(guī)劃測試配置清單、進(jìn)行可靠性、兼容性等方面的確定。
軟件測試是一個復(fù)雜而系統(tǒng)的實現(xiàn)過程,需要用正式的文檔形式記錄下來。編寫軟件測試各部分的文檔是進(jìn)行軟件測試規(guī)范化的重要組成部分,具體內(nèi)容如下。
測試計劃:軟件測試計劃是進(jìn)行軟件測試工作的綱領(lǐng)性文件,1998年美國電氣與電子工程師學(xué)會IEEE發(fā)布的軟件測試文檔標(biāo)準(zhǔn)829-1998《計算機(jī)軟件測試文件編制規(guī)范》中規(guī)定了測試計劃的主要內(nèi)容包括項目簡介、測試功能點、測試策略和方法、測試任務(wù)、硬件和軟件需求、人員分配和培訓(xùn)需求、測試進(jìn)度、風(fēng)險和意外等。
測試設(shè)計:軟件測試設(shè)計文檔主要是對測試用例的說明。中國國防科學(xué)技術(shù)工業(yè)委員會在1997年發(fā)布的GJB 438A-97《計算機(jī)軟件測試文件編制規(guī)范》中規(guī)定了測試說明的主要內(nèi)容包括被測軟件項目標(biāo)識、系統(tǒng)和文檔概述、引用文檔、測試環(huán)境、測試用例具體設(shè)計、評估測試結(jié)果的標(biāo)準(zhǔn)等等。
測試報告:軟件測試報告文檔主要用來記錄測試用例的運行過程和運行結(jié)果。中國國防科學(xué)技術(shù)工業(yè)委員會在1997年發(fā)布的GJB 438A-97《計算機(jī)軟件測試文件編制規(guī)范》中規(guī)定了測試報告的主要內(nèi)容包括被測軟件項目標(biāo)識、系統(tǒng)和文檔概述、引用文檔、測試過程和結(jié)果記錄、差異情況、評估和建議等等。
人們對軟件質(zhì)量的關(guān)注度越來越高,軟件測試人員肩負(fù)的責(zé)任日益重大,對軟件測試進(jìn)行科學(xué)有效的管理是測試人員考慮的首要問題。本文主要分析了軟件測試工作中對軟件測試進(jìn)行管理的方法和理論,有助于軟件測試管理者和測試工程師更好的規(guī)劃和管理軟件測試過程。
[1]Ron Patton.軟件測試[M].周予濱,姚靜,譯.北京:機(jī)械工業(yè)出版社,2002.
[2]鄭人杰. 計算機(jī)軟件測試技術(shù)[M]. 北京:清華大學(xué)出版社,1992.
[3]古樂,史九林.軟件測試案例和實踐教程[M].北京:清華大學(xué)出版社,2008.
[4]宮云戰(zhàn),趙瑞蓮,張威,趙會群. 軟件測試教程[M]. 機(jī)械工業(yè)出版社,2015.
[5]杜文潔 王占軍 高芳.軟件測試基礎(chǔ)教程.[M].北京:中國水利水電出版社,2016.
Analysis of software testing management
Yang Libo
(Huaian Vocational College of Information Technology, Huaian Jiangsu,223003)
At the present stage,the application area of software product became more and more widely,the quality of software was valued by the people increasingly,and software testing is the important part of software quality assurance.Better planning and management of software testing,and improving test efficiency are the primary task of test engineer.This article analysis method and theory of software testing management.
software testing management;software quality