劉雅君 李愛民 劉晟 張愛玲 張旋 袁婷
摘要:該文針對高職軟件專業的需求,配合《軟件測試技術》理論課程開設《軟件測試課程設計》理實一體化課程。該課程著眼于理論的實踐,切實注重培養學生動手能力。本文從教學目標、教學整體設計、理論教學設計和實踐教學設計等環節進行了探索,力求為企業培養具有工程實踐能力的軟件測試人才。
關鍵詞:軟件測試課程設計;教學改革;實踐教學
中圖分類號:G642 文獻標識碼:A
文章編號:1009-3044(2019)11-0176-02
1 軟件測試課程設計教學要求
《軟件測試課程設計》是我校計算機軟件專業(專科)、電子與計算機工程專業(本科)和軟件工程(本科)的專業必修課。通過該課程學習,使得學生系統地學習軟件測試的基本知識與技術,并且掌握一定的測試技巧[1]。本文中的《軟件測試課程設計》特指高職軟件專業開設的教學環節,是計算機相關軟件測試方向的實踐課程之一,一般安排在第四學期開設,共26課時。
本課程的先導課程主要包含兩門,分別是《java程序設計》和《C語言程序設計》,并行課程包含《Java Web開發》課程,后續課程包含《軟件工程導論》和《項目測試綜合實訓》兩門課程。通過這樣的設置,這些課程共同構成了軟件技術專業的崗位技能與職業能力培養的教學模塊。
該課程目標主要分為三個層次:首先,關于知識目標,主要要求學生理解軟件測試相關核心概念,熟悉軟件測試的整體流程,掌握主流的軟件測試技術和手段,熟悉幾種常用的軟件測試工具。其次,關于能力目標,主要訓練學生運用所學軟件測試技術和軟件測試工具解決實際的軟件測試問題,同時撰寫常用測試文檔。最后是素養目標,即培養學生良好的邏輯思維與分析能力、團隊合作能力和溝通交流能力[1]。
根據上述教學要求,該課程全程安排在機房,采用理論授課與上機實踐相結合的理實一體化授課方式。通過以軟件測試員崗位需求為依據,該課程以測試工作的一般工作流程為指導,設計突出職業能力和職業素養培養的教學環節,力求使其成為軟件專業培養過程中的具有鮮明特色的專業實踐課程。
2 軟件測試課程設計教學設計
2.1教學整體設計
本課程將配合《軟件測試技術》理論課開設,更著眼于理論的實踐,注重培養學生動手能力。本課程通過一個完整的測試項目,讓學生結成團隊,合作完成適當的上機測試實踐和相應的測試文檔。
在為期一周的教學過程中,平日6課時,周三4課時。其中周一上午,教師首先將課程設計進行整體介紹,要求學生分組。一般每組3人,確定一名組長負責小組的管理工作。其次,教師將提供3至5個典型的、規模及難度適宜的被測項目,供學生抽簽選擇。最后,每日前2課時由教師講解測試知識和對應測試文檔,剩余課時由學生測試實踐,教師及時解決學生相關問題并檢查各小組測試進度。
2.2理論教學設計
在理論教學過程中,為了提高教學效果,我們嘗試使用多種教學方法。首先,靈活使用“趣味教學法”。采用趣味授課的方式,來增強同學們學習軟件測試的興趣,促動他們主動接受教學內容,增強他們學習的自主[2]。例如,在第一日的理論教學過程中,為了開拓學生測試用例的設計思路,不僅展示登陸部分的常規測試用例,特別展示多個非典型測試用例。通過一些黑客攻擊故事,說明數據庫注入攻擊的測試用例,引發學生思考和思路的拓展。
其次,使用典型的案例教學法。本著“學為所用,學以致用,靈活運用”的原則組織教學,從現實軟件測試職場中選取實例和素材[3]。通過這種方式,一方面可以增加學生的學習積極性,掌握最近、最新的軟件測試知識,另一方面可以鍛煉他們靈活運用所學知識的能力,達到良好的學習效果。例如,在測試缺陷報告的書寫講解過程中,展示測試職場的真實案例。通過“禪道”等測試管理工具的展示,說明測試缺陷的生命周期,以及測試相關各方面人員的協作實踐過程。
最后,使用立體教學法,個性化授課。積極響應新型教學模式,采用立體化、個性化的授課方法,對學生進行因材施教,不同層次的學生安排遞進式實踐任務[4]。例如,針對測試對象項目,除了給予文檔示例資料,針對不同學生小組,給予不同的指導意見:針對動手能力較弱的小組,給予明確的測試步驟引導;對于有個性化編程技術特點的學生,針對源代碼的白盒測試給予具體建議;針對基礎扎實,進度較快的小組,給予進階的任務要求等等
總之,在整個理論教學過程,力求步驟清晰,由淺入深、通俗易懂、循序漸進。通過保持學生的學習興趣,重點突出,進而提高課堂效率。與此同時,要求學生注意記錄簡要筆記,把書讀薄,抓住主干。
2.3實踐教學設計
在實踐環節,擬采用基于“工作過程”的實踐模式,“教學做考”相結合的教學原則提高課堂教學效果:1)問題引入:展示軟件典型bug,起到拋磚引玉的作用。通過提出問題,展開討論,引入知識點。2)知識講解:依據不同的測試過程進行延伸性講解。3)工程實踐:要求學生針對本小組被測對象,具體解決真實工程的問題,以培養學生主動思考和應變能力。總之,采取多種多樣的教學手段和方法,以提高課堂教學效果和學生的實踐能力。
具體實踐教學內容包含:1)布置任務,分組;2)搭建測試環境;3)編寫測試計劃;4)網站前臺測試;5)網站后臺測試;6)答辯驗收環節。 實踐教學前,引導學生充分做好準備工作:首先,引導學生復習與該實踐環節相關的理論知識;其次,進行一定啟發式教學、引導學生針對本小組被測對象,思考實踐內容;要求小組組長對實驗內容進行分析和設計。
實踐教學中,針對學生出現的問題,教師鼓勵小組討論,盡量小組通過獨立思考從而解決。針對難以解決的問題,教師給予一定引導,盡可能介紹多種可行方案,要求學生思考、完善以及選取最具性價比的解決方法。實踐教學后,要求學生小組及時按照時間點,整理出相應文檔作為項目各階段的里程碑。一般文檔要求提交電子版本,具體包含:1)軟件測試計劃(每組一份);2)每日總結(每日每組一份);3)測試用例報告(每組一份);4)缺陷報告(每組一份);5)測試報告(每組一份);6)實訓總結(每人一份)。
課程考核方式主要包含以下三個方面:1)每日考勤。教師應嚴格考勤,要求學生主動簽到。因為該課程為一周實踐課程,如出現兩次無故曠課,成績計不及格。2)平時考核。每日,教師根據學生上機情況和每日總結,對每個學生的表現進行評分。3)答辯和文檔考核。根據小組整體答辯和文檔書寫情況,教師給予成績評定,一般針對小組組長和演講者進行適當加分表示鼓勵。實踐過程中,學生需服從教師及實驗室工作人員的安排,遵循實驗室相關制度,愛護設備和衛生。
3 結論
本文對高職軟件專業的需求,配合《軟件測試技術》理論課設計開設“軟件測試課程設計”。該課程著眼于理論的實踐,切實注重培養學生動手能力,詳細介紹了理論和實踐教學的環節設計細節,力求為企業培養具有工程實踐能力的軟件測試人才。
參考文獻:
[1] 劉紅, 張力生, 代勁. 工程項目實踐為導向的軟件測試教學體系[J]. 教育教學論壇, 2016(4):62-63.
[2] 朱小梅, 張群燕. 淺析軟件測試課程教學方法改進[J]. 經營管理者, 2012(16):334-334.
[3] 李菲, 曹陽, 顧問. 面向應用型人才培養的軟件測試課程教學研究[J]. 科教文匯,2018,420(4):86-88.
[4] 穆海倫, 李萬清. 面向企業的高校軟件測試教學改革探索[J]. 計算機教育, 2013(10): 36-40.
[5] 趙褕, 高鵬.軟件測試課程工程實踐教學模式的探索與實施[J].計算機工程與科學,2014(36):51-55.
【通聯編輯:王力】