二、教學(xué)中發(fā)現(xiàn)問題

  1、學(xué)生對軟件測試的誤解

  許多學(xué)生對軟件測試工作存在一些誤解。有人認(rèn)為軟件測試無需具備很高的技能,工作枯燥,不具創(chuàng)造性;有些人認(rèn)為軟件測試是軟件開發(fā)完成后才進(jìn)行的,只是軟件編碼的后一個階段;甚至學(xué)生們對軟件測試的內(nèi)容也存在一個誤區(qū),認(rèn)為軟件測試是檢查別人的程序。會比編程容易。事實上。軟件測試的內(nèi)容、項目種類紛繁復(fù)雜,從硬件到軟件,從程序代碼到文檔書寫等,都要求測試人員一測試,絕不比編程容易。而且測試人員考慮的東西要比開發(fā)人員更多,不僅要考慮合理的操作,也要測試不合理的操作,看軟件的反應(yīng)。只有軟件的每個細(xì)節(jié)都測試無誤才能讓軟件投放到市場上。否則,一旦軟件投入市場后發(fā)現(xiàn)錯誤,或更嚴(yán)重不得已收回,將會給公司造成巨大的經(jīng)濟損失。

  2、缺乏興趣。興趣是好的老師,對于軟件測試工作,通常是比較枯燥的,如果沒有興趣很難做到持久。我們在實踐的過程中發(fā)現(xiàn),感興趣的、做事認(rèn)真的同學(xué),能夠找出很多高優(yōu)先級的Bug。有的同學(xué)說測試工作太枯燥了,千篇一律,好多缺陷還要重現(xiàn),測好多遍,沒有挑戰(zhàn)性。這些同學(xué)由于缺乏興趣,不喜歡做軟件測試,實際上他對軟件測試技術(shù)缺乏基本的了解,所以他在測試工作中,只找到了極少數(shù)的Bug。

  3、測試用例的編寫不規(guī)范。對于一個軟件的測試來講,測試用例是至關(guān)重要的。測試用例要覆蓋所有測試規(guī)格,而且測試用例要易于理解、易于執(zhí)行,簡單的講是要描述的規(guī)范。而當(dāng)時在上機實踐的過程中好多同學(xué)的測試用例一團(tuán)糟,糟糕的是用例的質(zhì)量很差,測試用例的預(yù)置條件、操作步驟、預(yù)期結(jié)果的描述也是亂糟糟的,而且用于存儲測試用例的表格設(shè)計的很差,界面很不友好,從一定程度上降低了測試效率。使用這些測試用例,軟件找不出毛病,但實際上軟件是存在問題的,所以這樣根本無法保證軟件的產(chǎn)品質(zhì)量。
  4、軟件測試的重點不明確。軟件測試是軟件工程中軟件質(zhì)量保證的一項重要活動,它盡可能發(fā)現(xiàn)程序中存在的缺陷,保證程序的質(zhì)量。軟件作為一種商業(yè)品,有它的發(fā)布時限,這一點經(jīng)常忽略,同學(xué)們經(jīng)常在一些小問題上糾纏過多,而很多重點的問題卻沒有得到重視,一些嚴(yán)重問題暴露的比較晚,導(dǎo)致測試時間延了又延,如果真正到工作崗位不能按時交付,是要交違約金的,會給公司帶來不小的損失。

  5、自動化工具的使用存在問題。教材上所提到的自動化測試工具不是很多,而且講解的也不是很詳細(xì),在講課的過程中雖然進(jìn)行了大量的補充,包括IMB test manager以及l(fā)oad runner等,盡可能講解的詳細(xì)。但是由于學(xué)生學(xué)習(xí)的主動性較差,以至于在實訓(xùn)的時候出現(xiàn)了不少同學(xué)仍然不會使用自動化測試工具。

  三、解決方案

  1、修改教學(xué)計劃,改革教學(xué)模式

  修改教學(xué)計劃。傳統(tǒng)的教學(xué)計劃較為僵化,不能快速地發(fā)現(xiàn)市場的需求,更不能很好地適應(yīng)市場的需求。教學(xué)計劃應(yīng)建立在對社會和人才市場前瞻性研究的基礎(chǔ)之上,針對軟件行業(yè)做調(diào)研,然后根據(jù)技術(shù)的發(fā)展和市場環(huán)境的變更進(jìn)行同步更新。另外,要對課程設(shè)置進(jìn)行變革,使之模塊化、科學(xué)化,具備一定的彈性。

  軟件測試需要學(xué)生具有諸如,耐性、心細(xì)、敏感、逆向、設(shè)問、懷疑、舉證、韌性等多方面要求,軟件開發(fā)多運用正向思維的方式,而軟件測試工作則要根據(jù)原始需求、驗證編碼,在思維上更多使用逆向思維方式,根據(jù)已知的方向進(jìn)行發(fā)揮,從中找出并預(yù)見到軟件開發(fā)中的不完善之處。因此,學(xué)校的教育,不僅僅是教授學(xué)生技術(shù)和知識,還應(yīng)該通過選修課和各種活動,培養(yǎng)學(xué)生的逆向思維、鉆研精神和求真務(wù)實的品質(zhì)。

  改革教學(xué)模式。傳統(tǒng)的教學(xué)模式以教、授為主,新時期則提倡以人為本、因材施教的自主學(xué)習(xí)模式,并引入項目化教學(xué)。自主學(xué)習(xí)模式,要求教師樹立以學(xué)生為主的教學(xué)觀,鼓勵學(xué)生參與企業(yè)項目開發(fā),課堂上采用CIA、多媒體、e?Learning、案例等多種教學(xué)手段;學(xué)校應(yīng)積極投建校內(nèi)、校外實訓(xùn)基地,使學(xué)生在實踐中學(xué)習(xí),在項目中成長;改革考核方式,通過參與項目,考察學(xué)生實際測試能力,而不再像以前,以一篇考卷進(jìn)行死板的考核。學(xué)校還可以開展項目教學(xué),在軟件實訓(xùn)室內(nèi)進(jìn)行教學(xué),學(xué)生以項目開發(fā)為主線,在導(dǎo)師的全程指導(dǎo)下進(jìn)行專業(yè)課程的學(xué)習(xí),也可以請行業(yè)人士定期來做指導(dǎo),這樣可以使學(xué)生在完成真實項目的過程中,迅速提高軟件開發(fā)、測試水平以及團(tuán)隊合作能力。

  2、校企合作提供實習(xí)機會

  校企合作的軟件測試人才培養(yǎng)模式。校企合作培養(yǎng)高技能人才應(yīng)堅持為區(qū)域經(jīng)濟建設(shè)服務(wù),堅持以服務(wù)為宗旨,以基業(yè)為導(dǎo)向,堅持“優(yōu)勢互補,資源共享;セ莼ダ钡脑瓌t。我校軟件專業(yè)與IBM軟件學(xué)院、北大工程師合作,也和一些軟件企業(yè)聯(lián)系,幫他們做測試,如比購寶網(wǎng)站,給學(xué)生提供了真實項目作為上課素材,也提供了業(yè)和實習(xí)機會。高職院校應(yīng)在探索校企合作新型辦學(xué)模式的實踐中,不斷總結(jié)經(jīng)驗,開展全方位、深層次和多形式的合作。高職院校軟件測試人才培養(yǎng)的直接辦法是多與軟件企業(yè)進(jìn)行合作交流,建立實習(xí)基地,給學(xué)生參與實際項目的機會。這些都需要資金的投入,校企業(yè)合作辦學(xué)。通過參與項目的開發(fā),可以讓學(xué)生融入到軟件開發(fā)這個過程當(dāng)中,并隨著開發(fā)流程的進(jìn)展,感受到所面臨任務(wù)的變化,這這些步驟、經(jīng)歷都積攢起來,成為自己日后工作的經(jīng)驗財富。

  3、打造實戰(zhàn)型人才的師資隊伍

  計算機課程不像英語、數(shù)學(xué)一樣一成不變,有些教師可以說教課一把好手,但是長時間封閉在學(xué)校這個環(huán)境當(dāng)中,對社會上IT行業(yè)的發(fā)展了解相對滯后。計算機教師必須走出去,接觸新的軟件、新的技術(shù)。擔(dān)當(dāng)軟件測試課程的教師,更應(yīng)該緊跟社會需求和企業(yè)步伐,好參與過正規(guī)軟件項目的開發(fā),尤其參與過軟件項目的測試,對軟件開發(fā)的流程以及測試活動在開發(fā)流程各個階段的作用有深刻的認(rèn)識。上課時以自身參與的項目為實例,講授起來得心應(yīng)手。這一方面需要教師本身知識的積累,一方面也需要能夠參與到與企業(yè)合作交流的活動中去,加強實踐經(jīng)驗,緊跟技術(shù)發(fā)展步伐,時刻了解企業(yè)的需求,才能把握授課的方向。前面所說的校企合作,也可以給教師提供掛職鍛煉的機會,或利用寒暑假到軟件企業(yè)應(yīng)聘兼職,也是提升教師自己實戰(zhàn)能力的好方法。

  總之,軟件測試課程不是單一的理論課程,應(yīng)與行業(yè)掛鉤,將教學(xué)內(nèi)容,實訓(xùn)模式,培養(yǎng)目標(biāo)與測試工程師的崗位對接,全面提高學(xué)生的軟件測試職業(yè)能力,使學(xué)生畢業(yè)后真正具備軟件測試的能力,能夠勝任軟件測試崗位。