賈曉輝 劉安戰(zhàn) 李勇軍
摘? 要∶文章以測(cè)試實(shí)戰(zhàn)及就業(yè)導(dǎo)向?yàn)楦境霭l(fā)點(diǎn),對(duì)“軟件測(cè)試”課程開(kāi)展了以測(cè)試大賽及開(kāi)源項(xiàng)目為測(cè)試實(shí)踐的“兩段式實(shí)踐”教學(xué)改革探索,并詳實(shí)記錄了實(shí)踐教學(xué)的“兩真”執(zhí)行過(guò)程及“一真”執(zhí)行結(jié)果。該實(shí)踐方案為學(xué)生指明了測(cè)試行業(yè)就業(yè)的方向,為實(shí)現(xiàn)軟件工程專(zhuān)業(yè)應(yīng)用型人才培養(yǎng)目標(biāo)指出了一條切實(shí)可行之路。
關(guān)鍵詞∶兩段式實(shí)踐;軟件測(cè)試;教學(xué)改革;開(kāi)源軟件;測(cè)試大賽中圖法分類(lèi)號(hào)∶TP311??? 文獻(xiàn)標(biāo)識(shí)碼∶A
Exploration on practical teaching reform of skill-oriented "software testing" course JIA Xiaohui,LIU Anzhan,LI Yongjun
(Software College,Zhongyuan University of Technology,Zhengzhou 45007, China)
Abstract:The article takes the actual testing and enployment orientation as the fundamental starting point, carries out the“two-stage practice”teaching reform and exploration for the“software testing”course with testing competitions and open source projects as the testing practice, and records the "two truths" of practical teaching in detail and"olne true”execution result. This practice program points out the direction of the students employmert in the testing industry, and points out a practical way to achieve the goal of training applied talents in software engineering.
Key words: two-stage practice,software testing, teaching reform, open source software, testing competition
1現(xiàn)狀
現(xiàn)階段,功能測(cè)試、自動(dòng)化測(cè)領(lǐng)域試及人工智能、大數(shù)據(jù)方向的新興測(cè)試領(lǐng)域蓬勃發(fā)展。2020年,第十四屆軟件測(cè)試現(xiàn)狀調(diào)查數(shù)據(jù)統(tǒng)計(jì)顯示,54.2%的公司未來(lái)在功能測(cè)試領(lǐng)域投入更多資金,56.9%的公司計(jì)劃未來(lái)在接口自動(dòng)化測(cè)試領(lǐng)域投入更多資金,行業(yè)對(duì)接口自動(dòng)化測(cè)試需求呈現(xiàn)出快速發(fā)展趨勢(shì)。據(jù)統(tǒng)計(jì),2020年,中國(guó)軟件測(cè)試人才缺口近40萬(wàn),并且每年以20%的速度增加。然而,測(cè)試就業(yè)優(yōu)勢(shì)并沒(méi)有打破大學(xué)生對(duì)軟件測(cè)試學(xué)習(xí)的固有認(rèn)識(shí)。絕大部分學(xué)生及講師對(duì)測(cè)試工作依然留有刻板印象。例如,學(xué)生對(duì)測(cè)試行業(yè)沒(méi)有客觀認(rèn)識(shí),教師缺乏教學(xué)熱情、照本宣科、自顧自講課,難以激發(fā)學(xué)生的學(xué)習(xí)熱情,教學(xué)內(nèi)容不能緊跟軟件測(cè)試行業(yè)的發(fā)展,測(cè)試課程的實(shí)踐環(huán)節(jié)不能從根本上發(fā)現(xiàn)項(xiàng)目存在的場(chǎng)景問(wèn)題。學(xué)生視野囿于教材,看不到社會(huì)需求。因?yàn)闆](méi)有經(jīng)歷合適的實(shí)踐過(guò)程,課程學(xué)習(xí)結(jié)束之后依然看不清形式,找不到就業(yè)方向,甚至不能全面正確理解軟件開(kāi)發(fā)所包含的工作。因此,高校的“軟件測(cè)試”課程亟須從實(shí)際出發(fā),主動(dòng)擁抱企業(yè)檢驗(yàn),用實(shí)際行動(dòng)縮短“供、需”之間的差距。
針對(duì)所存在的問(wèn)題,國(guó)內(nèi)外學(xué)者進(jìn)行了相關(guān)研究。例如,吳瀟雪等[1]從教學(xué)方法方面進(jìn)行了探索,提出了基于Scrum方法的“軟件測(cè)試”課程教學(xué)模式,取得了良好的教學(xué)效果。鄭霖娟等[2]從崗位需求出發(fā),提出教學(xué)時(shí)應(yīng)以崗位核心能力為中心確定教學(xué)目標(biāo),極大提高了學(xué)生的崗位技能和職業(yè)素養(yǎng)。李雯睿等[3]基于項(xiàng)目提出了以基于主動(dòng)學(xué)習(xí)策略的“軟件測(cè)試”課程學(xué)習(xí)方法。張維勤等[4]對(duì)“軟件測(cè)試”課程提出了基于項(xiàng)目驅(qū)動(dòng)教學(xué)模式的改革實(shí)踐。劉曉榮等[5]從課程體系方面研究了技能大賽對(duì)“軟件測(cè)試”課程的作用和意義?!败浖y(cè)試與質(zhì)量保證”是中原工學(xué)院軟件學(xué)院軟件工程專(zhuān)業(yè)的一門(mén)核心專(zhuān)業(yè)技能課程,受專(zhuān)業(yè)總學(xué)時(shí)壓縮影響,設(shè)置成為30學(xué)時(shí)的秋季學(xué)期考查課程,常規(guī)教學(xué)效果微乎其微。經(jīng)過(guò)討論及權(quán)衡,明確以培養(yǎng)軟件測(cè)試工程師崗位核心能力為教學(xué)目標(biāo),從提升學(xué)生的實(shí)踐動(dòng)手能力入手,提出了以“兩段式實(shí)踐”為抓手的“軟件測(cè)試”課程教學(xué)改革。
2教學(xué)改革探索
如何有效利用有限的課堂時(shí)間并能從測(cè)試能力上訓(xùn)練學(xué)生,同時(shí)保證學(xué)生從心底欣然接受軟件測(cè)試的相關(guān)就業(yè)崗位,是教師首先需要考慮的問(wèn)題。軟件測(cè)試是保證軟件質(zhì)量的重要手段,也是軟件工程中不可分割的一個(gè)組成部分。隨著移動(dòng)互聯(lián)網(wǎng)的迅速發(fā)展和當(dāng)前市場(chǎng)對(duì)軟件測(cè)試人員的需求越來(lái)越大,“軟件測(cè)試”課程的地位應(yīng)該也逐步提高,目標(biāo)應(yīng)該調(diào)整為培養(yǎng)符合社會(huì)需求的優(yōu)秀軟件測(cè)試工程師,不應(yīng)該繼續(xù)止步于課本上的測(cè)試概念,因此從“測(cè)試競(jìng)賽+測(cè)試開(kāi)源項(xiàng)目”兩個(gè)方面進(jìn)行了改革嘗試。
2.1競(jìng)賽參與
最直接、最近距離了解企業(yè)需求的渠道就是參加社會(huì)競(jìng)賽。因?yàn)槠髽I(yè)的真實(shí)需求存在于競(jìng)賽中,因此競(jìng)賽也是行業(yè)需求的風(fēng)向標(biāo)。比如,美國(guó)有名的Netflix百萬(wàn)推薦算法大賽和國(guó)內(nèi)的火焰杯軟件測(cè)試大賽等都是基于行業(yè)需求。
“全國(guó)大學(xué)生軟件測(cè)試大賽”旨在建立軟件產(chǎn)業(yè)和高等教育的資源對(duì)接,探索產(chǎn)教研融合的軟件測(cè)試專(zhuān)業(yè)培養(yǎng)體系,進(jìn)一步推動(dòng)高等院校軟件測(cè)試專(zhuān)業(yè)建設(shè)。截止到2019年,參賽人次已超過(guò)41000人,涉及高校超過(guò)390所,在高校中具有一定影響力,因此課程組教師決定帶領(lǐng)學(xué)生迎接挑戰(zhàn),參加2021年的全國(guó)大學(xué)生軟件測(cè)試大賽。
(1)組織學(xué)生報(bào)名??紤]到教學(xué)目標(biāo)及學(xué)生的課業(yè)承受能力,結(jié)合測(cè)試時(shí)間,及時(shí)調(diào)整教學(xué)內(nèi)容,將該課程的實(shí)踐學(xué)習(xí)主要內(nèi)容修改為測(cè)試大賽的練習(xí)。組織2019級(jí)網(wǎng)絡(luò)方向54名學(xué)生結(jié)合個(gè)人興趣報(bào)名參加了2021年的Web應(yīng)用、移動(dòng)應(yīng)用等六個(gè)測(cè)試方向的全國(guó)大學(xué)生測(cè)試大賽。并提出“靠開(kāi)發(fā)進(jìn)不了大廠,也要靠測(cè)試進(jìn)入大廠”的學(xué)習(xí)口號(hào)。
(2)結(jié)合競(jìng)賽方向安裝測(cè)試環(huán)境。為了打消大部分學(xué)生的畏難情緒,有效利用有限的課堂時(shí)間,提高課堂教學(xué)質(zhì)量及效率,發(fā)揮學(xué)習(xí)能力強(qiáng)的學(xué)生“領(lǐng)頭羊”的作用,課堂上分享個(gè)人測(cè)試環(huán)境安裝經(jīng)驗(yàn),激發(fā)更多學(xué)生的競(jìng)爭(zhēng)意識(shí),其他學(xué)生緊隨其后,積極參與,測(cè)試環(huán)境的安裝問(wèn)題得以高效解決。
(3)測(cè)試題目的練習(xí)。因?yàn)闇y(cè)試大賽主要工作涉及功能測(cè)試及性能測(cè)試,考慮到不同的測(cè)試方向,其測(cè)試環(huán)境、測(cè)試軟件各不相同,不能占用課堂時(shí)間一一講解。而不經(jīng)歷完整的測(cè)試競(jìng)賽,則不能提升學(xué)生的測(cè)試經(jīng)驗(yàn)。因此,經(jīng)反復(fù)權(quán)衡,決定教師主講性能測(cè)試,學(xué)生自學(xué)功能測(cè)試的解決方案。一方面,教師課前將歷屆測(cè)試大獎(jiǎng)得主的經(jīng)驗(yàn)分享及JMETER測(cè)試軟件、測(cè)試得分點(diǎn)等以不同形式推給學(xué)生提前了解,然后課堂上重點(diǎn)內(nèi)容重點(diǎn)講解。性能測(cè)試問(wèn)題很快得到了較好處理,部分學(xué)生經(jīng)過(guò)練習(xí),性能測(cè)試取得了滿(mǎn)分的好成績(jī)。另一方面,同一測(cè)試方向的學(xué)生結(jié)成學(xué)習(xí)小組,共同解決相似的測(cè)試問(wèn)題,學(xué)生也明確了需要自學(xué)的測(cè)試工作。高效率的群體學(xué)習(xí),使得大部分學(xué)生很快熟悉了各自測(cè)試方向的競(jìng)賽要求,并迅速進(jìn)入測(cè)試訓(xùn)練狀態(tài)。
2021年,中原工學(xué)院軟件學(xué)院第一次組織學(xué)生參加了全國(guó)軟件測(cè)試競(jìng)賽,以賽促學(xué),從最開(kāi)始的了解大賽、報(bào)名、安裝環(huán)境、練習(xí)、參加大賽,每個(gè)環(huán)節(jié)都是師生共同面對(duì)的巨大挑戰(zhàn),每一步都離不開(kāi)教師的引導(dǎo),更離不開(kāi)學(xué)生的積極配合。這不僅提升了課堂學(xué)習(xí)質(zhì)量,學(xué)生通過(guò)競(jìng)賽或找到了學(xué)習(xí)目標(biāo),或明確了學(xué)習(xí)興趣,或?qū)崿F(xiàn)了自我突破,所有參與的學(xué)生都極大地鍛煉了自學(xué)能力,并感受到了集體智慧的力量。中原工學(xué)院軟件學(xué)院2019級(jí)網(wǎng)絡(luò)方向?qū)W生主修高級(jí)程序語(yǔ)言是C++,而軟件測(cè)試競(jìng)賽需要的語(yǔ)言環(huán)境全部是Java,測(cè)試腳本、測(cè)試用例、測(cè)試運(yùn)行都需要Java實(shí)現(xiàn),需要有極大勇氣挑戰(zhàn)自己。歷經(jīng)初賽、復(fù)賽,長(zhǎng)達(dá)1個(gè)多月的準(zhǔn)備時(shí)間,取得了3個(gè)省級(jí)三等獎(jiǎng),4個(gè)省級(jí)優(yōu)勝獎(jiǎng)的好成績(jī),如表1所列。
2.2項(xiàng)目實(shí)踐
實(shí)踐是提升學(xué)習(xí)能力的重要手段。測(cè)試大賽初賽結(jié)束后,小部分學(xué)生晉級(jí)省賽,大部分學(xué)生回歸正常課堂。若測(cè)試大賽更多的是依靠個(gè)人興趣及毅力堅(jiān)持到底,則課堂實(shí)踐學(xué)習(xí)就要更多依賴(lài)?yán)蠋熞龑?dǎo)、激勵(lì)。為了使學(xué)生真正理解測(cè)試行業(yè)并能從業(yè)測(cè)試行業(yè)工作,經(jīng)過(guò)研究,最終決定拋棄最初測(cè)試個(gè)人項(xiàng)目的測(cè)試實(shí)踐教學(xué)安排,轉(zhuǎn)而投向開(kāi)源項(xiàng)目的測(cè)試。
“禪道”是一款開(kāi)源的國(guó)產(chǎn)軟件項(xiàng)目管理軟件,其版本迭代非常快。關(guān)于測(cè)試的管理流程,從建立測(cè)試小組,分配測(cè)試任務(wù)、測(cè)試執(zhí)行、bug提交、缺陷修復(fù)等管理流程,全程使用“禪道”。布置實(shí)踐任務(wù)的時(shí)候,鼓勵(lì)學(xué)生測(cè)試“禪道”,并把測(cè)試發(fā)現(xiàn)的bug提交到“禪道”官網(wǎng)的論壇中,一方面是體現(xiàn)學(xué)生的個(gè)人測(cè)試能力,另一方面也提高自身在測(cè)試行業(yè)的關(guān)注度。部分學(xué)生在測(cè)試“禪道”候的確發(fā)現(xiàn)了缺陷,而教師關(guān)于測(cè)試對(duì)象、測(cè)試論壇、缺陷管理等提醒也使得學(xué)生看問(wèn)題越來(lái)越長(zhǎng)遠(yuǎn),學(xué)生在學(xué)習(xí)中逐步具備了初步描繪自己職業(yè)發(fā)展的想法。以團(tuán)隊(duì)形式組建的項(xiàng)目測(cè)試小組,不僅加強(qiáng)了交流,也提升了合作能力,加深了學(xué)生之間的相互了解和友誼。
2.3教學(xué)相長(zhǎng)
第一次測(cè)試課程的實(shí)踐教學(xué)探索,參與改革的教師無(wú)形中需要投入更多地學(xué)習(xí)時(shí)間。為了保證教學(xué)內(nèi)容緊跟行業(yè)發(fā)展,每次課程都能使學(xué)生有收獲,教師都是提前組織即將學(xué)習(xí)的主題內(nèi)容,在網(wǎng)上找各種視頻及其他形式的資源,經(jīng)過(guò)篩選,把最合適的視頻及文本轉(zhuǎn)發(fā)到學(xué)生群,安排給學(xué)生自學(xué)。然后,教師獨(dú)自消化、總結(jié),隨時(shí)線上交流,相互探討。最終,在課堂上以教師講解或者學(xué)生分享等方式傳達(dá)到更多學(xué)生,并留出時(shí)間開(kāi)展測(cè)試練習(xí),撰寫(xiě)測(cè)試報(bào)告。
學(xué)生在實(shí)踐的過(guò)程中遇到各種問(wèn)題,反過(guò)來(lái)能啟發(fā)教師。在利用“禪道”管理軟件進(jìn)行測(cè)試的過(guò)程中,某學(xué)生發(fā)揚(yáng)愚公移山、持之以恒的精神解決登錄密碼丟失的問(wèn)題,其鍥而不舍的學(xué)習(xí)精神值得表?yè)P(yáng)與肯定;有學(xué)生還聰明地發(fā)現(xiàn)免下載、免注冊(cè)的“云禪道”,為大家提供了更快捷的使用方法;還有學(xué)生經(jīng)過(guò)測(cè)試發(fā)現(xiàn)了“禪道”的一些缺陷。學(xué)生發(fā)現(xiàn)問(wèn)題并獨(dú)立解決問(wèn)題的成長(zhǎng)過(guò)程,讓老師獲得職業(yè)成就感。
3課程考核
學(xué)生的成績(jī)與學(xué)生的學(xué)習(xí)過(guò)程緊密結(jié)合,綜合考慮測(cè)試大賽的實(shí)踐過(guò)程、測(cè)試環(huán)境安裝或者測(cè)試流程相關(guān)視頻的錄制、測(cè)試報(bào)告、口頭匯報(bào)、測(cè)試論文等各個(gè)實(shí)踐環(huán)節(jié),加權(quán)打分,該班級(jí)最終成績(jī)打破了歷史上最好期末考試成績(jī)記錄,54人中21人最終成績(jī)90分以上,占比39%。但是,也有1人因?yàn)楹芏鄬?shí)踐過(guò)程沒(méi)有參與而不及格。期末成績(jī)分布如圖1所示。
分?jǐn)?shù)并不能完全反映學(xué)生的學(xué)習(xí)收獲情況,需要教師針對(duì)實(shí)際情況給與客觀評(píng)價(jià)。比如,一部分從來(lái)沒(méi)參加過(guò)任何競(jìng)賽的學(xué)生,認(rèn)為自己敢于實(shí)現(xiàn)從0到1的突破,就是最大的收獲;有的學(xué)生因?yàn)閰⒓痈?jìng)賽更加明確了自己的努力方向;有的學(xué)生因?yàn)閷W(xué)習(xí)該課程對(duì)自己的專(zhuān)業(yè)更加有信心;也有學(xué)生不僅專(zhuān)業(yè)技能得到提升,更是從團(tuán)隊(duì)合作中獲得了友情等不一而足。
4經(jīng)驗(yàn)總結(jié)
采取上述形式打破常規(guī)組織教學(xué),實(shí)際上任課教師最初也曾經(jīng)動(dòng)搖過(guò),因?yàn)樵撜n程是只有30學(xué)時(shí)的考查課,部分學(xué)生只希望獲得相應(yīng)學(xué)分。當(dāng)教師要求他們投入更多的時(shí)間去參加競(jìng)賽,可能遭到拒絕,甚至可能對(duì)教師的教學(xué)評(píng)價(jià)成績(jī)產(chǎn)生影響。但是,這種最接近工作場(chǎng)景的競(jìng)賽才能夠最大限度地讓學(xué)生體會(huì)測(cè)試的工作內(nèi)容、了解行業(yè)的發(fā)展和需求,即使再困難也值得嘗試。因此,首先要想辦法讓學(xué)生理解教師的良苦用心,主動(dòng)配合。其次是調(diào)動(dòng)學(xué)生的積極性,盡力幫助學(xué)生進(jìn)入競(jìng)賽狀態(tài)。
5改進(jìn)措施
不斷總結(jié)經(jīng)驗(yàn),繼續(xù)完善以技能為導(dǎo)向的軟件質(zhì)量保證與測(cè)試課程改革,有效開(kāi)展“兩段式實(shí)踐”教學(xué),既能學(xué)習(xí)軟件測(cè)試?yán)碚撝R(shí),又可以積累軟件測(cè)試實(shí)踐經(jīng)驗(yàn),為就業(yè)做好準(zhǔn)備,形成成熟并可以推廣的教學(xué)執(zhí)行方案。
第一階段圍繞競(jìng)賽安排教學(xué)進(jìn)度及教學(xué)內(nèi)容。因?yàn)闇y(cè)試大賽初賽是在每年的10月底舉行,所以學(xué)期開(kāi)始首先安排大賽需要的功能測(cè)試?yán)碚撝R(shí),然后結(jié)合個(gè)人興趣,圍繞軟件測(cè)試大賽報(bào)名、練習(xí)等開(kāi)展實(shí)踐學(xué)習(xí),直到測(cè)試初賽結(jié)束;第二階段以開(kāi)源項(xiàng)目為測(cè)試對(duì)象安排教學(xué)工作。在測(cè)試實(shí)際項(xiàng)目的同時(shí),強(qiáng)調(diào)測(cè)試用例設(shè)計(jì)的重要性及測(cè)試報(bào)告的規(guī)范性,合理分配測(cè)試工作,有計(jì)劃地結(jié)合專(zhuān)業(yè)方向,重點(diǎn)傳授與方向相關(guān)的測(cè)試工具的使用方法。
6結(jié)束語(yǔ)
本文圍繞以實(shí)踐為抓手的“軟件測(cè)試”課程實(shí)踐教學(xué)改革,以提升學(xué)生實(shí)踐能力為目標(biāo),介紹了“軟件測(cè)試”課程中創(chuàng)造性地加入測(cè)試競(jìng)賽、開(kāi)源項(xiàng)目為測(cè)試對(duì)象的實(shí)踐探索,并總結(jié)了實(shí)踐教學(xué)經(jīng)驗(yàn),同時(shí)指出了后續(xù)的改進(jìn)方向。
參考文獻(xiàn):
[1]吳瀟雪,鄭煒,慕德俊,等.基于Scrum方法的軟件測(cè)試教學(xué)模式探索與實(shí)踐[J].計(jì)算機(jī)教育,2018(2):74-77.
[2]鄭霖娟,林昆.基于崗位核心能力的“軟件測(cè)試技術(shù)”課程設(shè)計(jì)與實(shí)踐[J].軟件,2020,41(10):286-288.
[3]李雯睿,張鵬程,楊種學(xué).基于主動(dòng)學(xué)習(xí)策略的軟件測(cè)試教學(xué)方法初探[J].計(jì)算機(jī)教育,2012(8):54-57.
[4]張維勤,張國(guó)鋒.基于項(xiàng)目驅(qū)動(dòng)教學(xué)模式的軟件測(cè)試課程創(chuàng)新研究[J].信息與電腦,2020,32(17):243-244.
[5]劉曉榮,高蘭德.基于技能大賽下的軟件測(cè)試課程體系的探討與研究[J].電腦知識(shí)與技術(shù):學(xué)術(shù)版,2019,15(11):91-92.
作者簡(jiǎn)介:
賈曉輝(1972—),碩士,副教授,研究方向:知識(shí)圖譜。