廖周宇
摘要:當(dāng)前,軟件測(cè)試人才培養(yǎng)模式不能完全滿(mǎn)足行業(yè)實(shí)際需求。提出一種以軟件工程實(shí)踐項(xiàng)目為驅(qū)動(dòng)的軟件測(cè)試人才培養(yǎng)方案,將軟件測(cè)試方法和質(zhì)量保證策略貫穿到軟件項(xiàng)目生命周期各階段,達(dá)到培養(yǎng)軟件測(cè)試應(yīng)用型人才,提高其綜合素質(zhì)的目標(biāo)。
關(guān)鍵詞:軟件測(cè)試;質(zhì)量保證;生命周期;應(yīng)用型人才
DOIDOI:10.11907/rjdk.151372
中圖分類(lèi)號(hào):G434
文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):16727800(2015)008021202
0 引言
計(jì)算機(jī)硬件成本不斷下降,而軟件應(yīng)用領(lǐng)域越來(lái)越廣,軟件所要解決問(wèn)題的復(fù)雜程度也越來(lái)越高。軟件功能和質(zhì)量不能滿(mǎn)足實(shí)際需求,究其原因主要有:①軟件開(kāi)發(fā)過(guò)程中,計(jì)算機(jī)系統(tǒng)觀(guān)和軟件工程觀(guān)沒(méi)有得到落實(shí),尤其是沒(méi)有采用標(biāo)準(zhǔn)工程化的思想指導(dǎo)軟件開(kāi)發(fā),軟件需求隨意變更,導(dǎo)致軟件開(kāi)發(fā)成本和進(jìn)度難以控制和預(yù)測(cè)[1];②軟件開(kāi)發(fā)過(guò)程中雖然借鑒了工程領(lǐng)域某些原則,但大多將軟件測(cè)試這一質(zhì)量保證措施放在軟件開(kāi)發(fā)工作全部完成后進(jìn)行。軟件屬于特殊的智力密集型產(chǎn)品,很難有統(tǒng)一的測(cè)試方法和標(biāo)準(zhǔn)保證和控制軟件質(zhì)量[2]。將軟件測(cè)試方法和質(zhì)量保證策略貫穿到軟件項(xiàng)目生命周期各階段,加強(qiáng)軟件測(cè)試對(duì)提高軟件質(zhì)量和開(kāi)發(fā)效率尤為必要。
1 軟件測(cè)試現(xiàn)狀
從我國(guó)軟件行業(yè)發(fā)展歷程來(lái)看,大多企業(yè)往往注重軟件設(shè)計(jì)和開(kāi)發(fā),而忽視軟件測(cè)試和質(zhì)量保障。大多測(cè)試工作由編寫(xiě)該模塊代碼的開(kāi)發(fā)工程師來(lái)完成。軟件測(cè)試和質(zhì)量保證部門(mén)建制缺失,普遍認(rèn)為軟件測(cè)試部門(mén)可有可無(wú),而開(kāi)發(fā)人員又不愿意轉(zhuǎn)為專(zhuān)職軟件測(cè)試人員,從而導(dǎo)致專(zhuān)業(yè)技術(shù)精湛的軟件測(cè)試人才缺失。
在高校教學(xué)中,往往忽視軟件測(cè)試的重要性。大多學(xué)校沒(méi)有專(zhuān)門(mén)開(kāi)設(shè)軟件測(cè)試與質(zhì)量保證的課程,只是將其作為軟件工程課程中的一個(gè)章節(jié),僅分配4課時(shí),且教學(xué)內(nèi)容偏重于理論。教學(xué)中沒(méi)有向?qū)W生灌輸在軟件生命周期各階段都要對(duì)軟件進(jìn)行測(cè)試保障質(zhì)量的思想;更談不上在實(shí)際項(xiàng)目訓(xùn)練中運(yùn)用軟件測(cè)試與質(zhì)量保證的原理和方法解決實(shí)際問(wèn)題[3]。各高校加強(qiáng)教學(xué)改革,培養(yǎng)出具有實(shí)際經(jīng)驗(yàn)的應(yīng)用型軟件測(cè)試人才尤為必要[4]。
2 軟件工程化生命周期與軟件測(cè)試相互結(jié)合
軟件工程方法使軟件開(kāi)發(fā)過(guò)程具有工程化特質(zhì)。它將軟件生命周期分為如下幾個(gè)階段:①軟件定義階段,包括軟件計(jì)劃、需求分析;②開(kāi)發(fā)階段,包括軟件概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼實(shí)現(xiàn)、測(cè)試;③軟件運(yùn)行維護(hù),包括軟件運(yùn)行、維護(hù)和升級(jí)。將軟件工程每個(gè)階段與軟件測(cè)試和質(zhì)量保證有機(jī)結(jié)合起來(lái),形成一條主線(xiàn),使軟件測(cè)試和質(zhì)量保證貫穿于軟件生命周期中,保證軟件質(zhì)量[5]。軟件開(kāi)發(fā)生命周期各階段對(duì)應(yīng)的測(cè)試內(nèi)容如表1所示。
軟件工程各生命周期中完成的軟件文檔是檢驗(yàn)軟件質(zhì)量的主要對(duì)象。程序中出現(xiàn)的錯(cuò)誤,并不一定都是編碼引起的,很可能產(chǎn)生于軟件設(shè)計(jì)及需求分析階段。解決、糾正錯(cuò)誤需追溯到前期工作。正因如此,軟件測(cè)試和質(zhì)量保證工作應(yīng)著眼于整個(gè)軟件開(kāi)發(fā)生命周期,從軟件開(kāi)發(fā)項(xiàng)目生命周期第一個(gè)階段開(kāi)始,并貫穿于整個(gè)軟件開(kāi)發(fā)生命周期。
3 基于項(xiàng)目驅(qū)動(dòng)的課程改革
根據(jù)軟件測(cè)試工程師應(yīng)用型人才培養(yǎng)總體目標(biāo),基于軟件工程項(xiàng)目實(shí)踐驅(qū)動(dòng)的課程安排可在同一學(xué)期開(kāi)設(shè)《軟件工程》、《軟件測(cè)試與質(zhì)量保證》兩門(mén)課程。以實(shí)際軟件項(xiàng)目為驅(qū)動(dòng),使學(xué)生深入理解軟件工程、軟件測(cè)試與質(zhì)量保證的理論體系,并在項(xiàng)目實(shí)踐中全面理解軟件項(xiàng)目開(kāi)發(fā)生命周期各階段的任務(wù)以及測(cè)試方法。在整個(gè)項(xiàng)目實(shí)踐過(guò)程中,提高軟件需求分析能力、軟件設(shè)計(jì)能力、編程能力、軟件測(cè)試和質(zhì)量保證能力,達(dá)到強(qiáng)化技能的目的。課程課時(shí)安排可課堂理論教學(xué)課時(shí)和專(zhuān)業(yè)實(shí)踐課時(shí)各占一半。
在理論課堂教學(xué)中,根據(jù)不同階段,選取具有代表性的案例,理論聯(lián)系實(shí)際,使學(xué)生系統(tǒng)掌握軟件測(cè)試和質(zhì)量保證的基礎(chǔ)理論知識(shí)。重點(diǎn)講解功能測(cè)試有關(guān)內(nèi)容:黑盒測(cè)試用例設(shè)計(jì);邏輯測(cè)試即白盒測(cè)試用例的設(shè)計(jì);白盒與黑盒混合型的灰盒測(cè)試用例設(shè)計(jì)。針對(duì)黑盒測(cè)試方法,詳細(xì)講解等價(jià)類(lèi)劃分法、邊界值分析法、因果圖法及功能圖法原理和用例設(shè)計(jì)方法??闪信e經(jīng)典案例,如三角形等價(jià)類(lèi)劃分判定測(cè)試;數(shù)組邊界值劃分判定測(cè)試;自動(dòng)售貨機(jī)測(cè)試用例判定等。詳細(xì)對(duì)比常用黑盒測(cè)試方法的優(yōu)缺點(diǎn)和適用場(chǎng)景。針對(duì)白盒測(cè)試方法,重點(diǎn)講解語(yǔ)句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、路徑覆蓋方法的原理和用例設(shè)計(jì),并列舉程序設(shè)計(jì)流程圖,逐一講解方法應(yīng)用,對(duì)比常用白盒測(cè)試方法的優(yōu)劣和適用場(chǎng)景。
在實(shí)踐教學(xué)中,重點(diǎn)講解邏輯測(cè)試和功能測(cè)試軟件工具使用。對(duì)各測(cè)試軟件進(jìn)行詳細(xì)介紹,將理論課中已講解的測(cè)試用例進(jìn)行逐一測(cè)試。以軟件工程項(xiàng)目小組設(shè)計(jì)的軟件實(shí)踐項(xiàng)目為驅(qū)動(dòng),做好項(xiàng)目測(cè)試需求,設(shè)計(jì)完整的測(cè)試用例,并逐一進(jìn)行測(cè)試,以便判定實(shí)踐項(xiàng)目軟件是否滿(mǎn)足相應(yīng)的邏輯和功能要求。根據(jù)項(xiàng)目小組所選定的開(kāi)發(fā)語(yǔ)言和平臺(tái),選用不同的測(cè)試軟件。其中,針對(duì)功能測(cè)試重點(diǎn)練習(xí)HP的loadrunner 性能測(cè)試工具、QTP自動(dòng)回歸測(cè)試工具、winrunner功能測(cè)試工具等的使用;針對(duì)邏輯測(cè)試和項(xiàng)目選取不同的開(kāi)發(fā)語(yǔ)言,重點(diǎn)運(yùn)用C++ Test,JUnit,PHPUnit等工具完成軟件項(xiàng)目單元邏輯測(cè)試。使用TestDirector對(duì)系統(tǒng)中所有測(cè)試用例數(shù)據(jù)、測(cè)試缺陷及bug進(jìn)行定位、管理和跟蹤。
項(xiàng)目小組形成完整的測(cè)試報(bào)告,提出具有可操作性的軟件質(zhì)量改善建議。在完善、改進(jìn)測(cè)試方案的基礎(chǔ)上,對(duì)軟件項(xiàng)目進(jìn)行迭代式再測(cè)試,使項(xiàng)目生命周期階段推進(jìn)和軟件質(zhì)量保證過(guò)程交匯推進(jìn),然后在軟件項(xiàng)目實(shí)施的過(guò)程中完成安裝、驗(yàn)收和運(yùn)維測(cè)試,最終使軟件達(dá)到軟件需求規(guī)格說(shuō)明書(shū)中所規(guī)定的軟件功能、性能和質(zhì)量標(biāo)準(zhǔn)。以軟件項(xiàng)目為驅(qū)動(dòng)的測(cè)試和質(zhì)量保證各階段工作內(nèi)容如表2所示。
4 結(jié)語(yǔ)
《軟件測(cè)試》是計(jì)算機(jī)及軟件工程專(zhuān)業(yè)的一門(mén)核心課程,是應(yīng)用型軟件測(cè)試人才所必須掌握的技能。本文提出以軟件實(shí)踐項(xiàng)目為驅(qū)動(dòng),在軟件開(kāi)發(fā)生命周期各階段貫穿軟件測(cè)試和質(zhì)量保證的思維和方法。通過(guò)軟件開(kāi)發(fā)過(guò)程和測(cè)試過(guò)程交叉融合,使學(xué)生將計(jì)算機(jī)系統(tǒng)觀(guān)和軟件工程觀(guān)運(yùn)用到開(kāi)發(fā)軟件中,保障軟件開(kāi)發(fā)質(zhì)量。學(xué)生往往更樂(lè)于接受實(shí)踐教學(xué),在真實(shí)環(huán)境中開(kāi)發(fā)軟件,并對(duì)其進(jìn)行測(cè)試,可以通過(guò)加強(qiáng)實(shí)踐教學(xué)環(huán)節(jié),以適應(yīng)行業(yè)對(duì)測(cè)試人才能力和素質(zhì)的要求。
參考文獻(xiàn):
[1] 秦航,楊強(qiáng).軟件質(zhì)量保證與測(cè)試[M].北京:清華大學(xué)出版社,2012.
[2] 程茂,溫靜,吳玉潔.軟件測(cè)試的教學(xué)研究[J].河北師范大學(xué)學(xué)報(bào),2010(12):117120.
[3] 朱志慧.基于項(xiàng)目驅(qū)動(dòng)的軟件測(cè)試課程改革探索[J].電腦知識(shí)與技術(shù),2014,10(33): 79607961.
[4] 董瑞志.面向軟件測(cè)試工程師培養(yǎng)的《軟件測(cè)試與質(zhì)量保證》實(shí)驗(yàn)教學(xué)改革[J].教育教學(xué)論壇,2014(51):9495.
[5] NIIT.Software testing and quality assurance[M].上海:NIIT(中國(guó)),2011.
(責(zé)任編輯:陳福時(shí))