軟件測(cè)試是保障軟件質(zhì)量的重要環(huán)節(jié),企業(yè)對(duì)于軟件質(zhì)量意識(shí)的逐步增強(qiáng),促使國(guó)內(nèi)軟件測(cè)試人員的地位不斷提升。但中國(guó)高等教育往往落后企業(yè)實(shí)際發(fā)展3-5年,所以在高校學(xué)子心中,重開發(fā)、輕測(cè)試的思想依然嚴(yán)重。許多優(yōu)秀的畢業(yè)生甚至對(duì)測(cè)試工作存在偏見,致使軟件測(cè)試人才缺口進(jìn)一步放大,從而影響企業(yè)對(duì)測(cè)試人員的招募工作,繼而影響中國(guó)IT產(chǎn)業(yè)發(fā)展。其中有三個(gè)誤區(qū)尤為突出:

誤區(qū)1:軟件測(cè)試是軟件開發(fā)完成之后才進(jìn)行的。

在傳統(tǒng)的瀑布模型中,軟件項(xiàng)目主要有以下幾個(gè)階段組成:計(jì)劃、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試和運(yùn)行維護(hù)。由于軟件測(cè)試僅處于運(yùn)行維護(hù)階段之前,是軟件產(chǎn)品交付用戶使用之前保證軟件質(zhì)量的重要手段。因此很多人認(rèn)為,軟件測(cè)試只是軟件編碼后的一個(gè)階段。

但隨著軟件測(cè)試的發(fā)展,人們?cè)絹?lái)越認(rèn)識(shí)到瀑布模型有以下缺點(diǎn):項(xiàng)目和項(xiàng)目之間極少有反饋,而且只有在項(xiàng)目生命周期的后期才能看到結(jié)果。這給經(jīng)常發(fā)生需求變更的軟件研發(fā)工作產(chǎn)生很多不便,而且一旦在編碼階段結(jié)束才發(fā)現(xiàn)設(shè)計(jì)和需求階段的錯(cuò)誤問(wèn)題,修復(fù)的成本會(huì)很高。IBM研究發(fā)布的“缺陷修改成本趨勢(shì)圖”表明,缺陷存在放大趨勢(shì),如果在設(shè)計(jì)階段修正一個(gè)錯(cuò)誤的代價(jià)是1,那在詳細(xì)設(shè)計(jì)到編碼階段的錯(cuò)誤放大系數(shù)大約為3,到測(cè)試階段成本則放大到20-30倍。所以軟件測(cè)試應(yīng)貫穿于整個(gè)軟件開發(fā)生命周期的過(guò)程活動(dòng),包括軟件測(cè)試計(jì)劃、軟件測(cè)試需求分析、軟件測(cè)試用例設(shè)計(jì)、軟件測(cè)試執(zhí)行、軟件缺陷管理、軟件測(cè)試風(fēng)險(xiǎn)管理以及其他的一些軟件測(cè)試相關(guān)的活動(dòng)等組成。在軟件項(xiàng)目的每個(gè)階段,都需要進(jìn)行不同目的和不同內(nèi)容的測(cè)試活動(dòng),以保證各個(gè)階段工作產(chǎn)品輸出的正確性。軟件測(cè)試的對(duì)象也不僅僅是軟件代碼,還包括軟件需求文檔和設(shè)計(jì)文檔等其他所有的軟件工作產(chǎn)品。軟件開發(fā)與軟件測(cè)試之間應(yīng)該是交互進(jìn)行的,比如單元編碼之后需要進(jìn)行單元測(cè)試,模塊組合之后進(jìn)行集成測(cè)試。

誤區(qū)2:軟件測(cè)試無(wú)需具備很高的技能,是沒有前途的工作。

在很多高校學(xué)子的眼中,往往傾向于從事具有創(chuàng)造性的工作,比如軟件開發(fā),將一個(gè)軟件從始至終的開發(fā)出來(lái),而不屑于貌似事后完善的軟件測(cè)試工作。甚至還有很多學(xué)生認(rèn)為,軟件測(cè)試只是簡(jiǎn)單的功能性黑盒測(cè)試,點(diǎn)點(diǎn)鼠標(biāo),看看軟件功能是否符合產(chǎn)品規(guī)格說(shuō)明書就可以了,這種看似家庭主婦都可以做的工作,毫無(wú)技術(shù)含量可言,且沒有發(fā)展前途。

其實(shí),這種觀點(diǎn)是錯(cuò)誤的,隨著軟件測(cè)試技術(shù)的發(fā)展,測(cè)試不僅僅是運(yùn)行軟件發(fā)現(xiàn)缺陷的一個(gè)過(guò)程,測(cè)試人員應(yīng)該在項(xiàng)目早期開始就介入,進(jìn)行測(cè)試需求分析、制定測(cè)試計(jì)劃等。這要求測(cè)試人員有很好的溝通能力、理解能力、分析問(wèn)題能力,同時(shí)還必須對(duì)該軟件服務(wù)的行業(yè)有一定的了解。如今,軟件測(cè)試技術(shù)不斷更新和完善,工具、流程、測(cè)試設(shè)計(jì)方法都在不斷更新,需要掌握和學(xué)習(xí)很多測(cè)試知識(shí)。有代碼能力的測(cè)試人員,更可以做代碼走讀、測(cè)試工具腳本編寫等工作,職業(yè)發(fā)展?jié)摿o(wú)限。

誤區(qū)3:軟件發(fā)布后發(fā)現(xiàn)缺陷或bug,那是測(cè)試人員的責(zé)任。

許多學(xué)生認(rèn)為,測(cè)試人員對(duì)軟件質(zhì)量負(fù)全部責(zé)任,假如用戶收到軟件后發(fā)現(xiàn)問(wèn)題,那是測(cè)試人員的責(zé)任。這種認(rèn)識(shí)其實(shí)是非常片面的。首先,再高明的測(cè)試工程師都無(wú)法保證軟件發(fā)布后沒有錯(cuò)誤或缺陷,即使是國(guó)際軟件巨頭研發(fā)的軟件都會(huì)或多或少存在一些bug,所以測(cè)試人員只能盡可能將軟件質(zhì)量控制在較高的水準(zhǔn)。其次,從軟件生命周期的整個(gè)過(guò)程來(lái)看,所有參與軟件項(xiàng)目的參與人員都應(yīng)對(duì)軟件質(zhì)量負(fù)責(zé),而不單單是個(gè)人或測(cè)試團(tuán)隊(duì)的事情。如:軟件急于發(fā)布,測(cè)試時(shí)間不足;客戶需求理解偏差;項(xiàng)目流程管理混亂等原因都會(huì)對(duì)軟件質(zhì)量產(chǎn)生影響。

另外,還有很多學(xué)生不清楚測(cè)試工程師需要做哪些工作,現(xiàn)將主要工作內(nèi)容列舉如下:

檢視代碼、評(píng)審開發(fā)文檔;

進(jìn)行測(cè)試設(shè)計(jì)、寫測(cè)試文檔(測(cè)試計(jì)劃、測(cè)試方案、測(cè)試用例等);

通過(guò)人工或自動(dòng)化手段執(zhí)行測(cè)試,發(fā)現(xiàn)軟件缺陷,提交缺陷報(bào)告,并確認(rèn)缺陷最終得到了修正;

通過(guò)測(cè)試度量軟件的質(zhì)量。

總結(jié):

作為正飛速發(fā)展的IT產(chǎn)業(yè)鏈中的一部分,軟件測(cè)試的重要性已是毋庸置疑的關(guān)鍵環(huán)節(jié),當(dāng)它的重要性已經(jīng)被各家公司提升到一定高度的時(shí)候,高校學(xué)子們也應(yīng)該與時(shí)俱進(jìn),提高對(duì)軟件測(cè)試崗位的理解。對(duì)于有志從事IT崗位的高校畢業(yè)生來(lái)說(shuō),充分了解各個(gè)職位的真實(shí)情況,對(duì)于將來(lái)職業(yè)的選擇和規(guī)劃都有著莫大的好處。