敖 麗 田安紅 李敬麗 許秋麗
(曲靖師范學院 計算機科學與工程學院,云南 曲靖655011)
隨著軟件行業的飛速發展, 國內外出現很多新鮮的軟件企業,增加了大學生的就業機遇,然而軟件的規模在日益擴大,它的復雜性也在逐漸增強,如果軟件出現缺陷,修復的代價就很大。軟件測試是保證軟件產品質量的最有效的方法[1],然而在國內軟件行業對軟件測試的認識普遍較晚,并且存在一種現象“重開發、輕測試”[2],導致中國軟件行業發展的怠慢。 很過高校也多都先后開設了軟件測試的課程,但很多老師都不具備實際的軟件測試經驗,本文研究開展基于軟件測試的綜合性設計實驗,探討提高教學效果。
《軟件測試技術》是計算機科學與工程學院中軟件工程專業的一門重要的專業必修課,是為我國軟件產業培養急需的軟件質量保證和測試專業人才服務。 該門課程在很多高校重視理論教學,輕視實踐教學[3],以及課時太少,無法掌握軟件測試的核心內容。
開發《軟件測試技術》綜合性實驗對學生意義重大,通過本課程的學習,使學生能掌握軟件測試技術和基本操作技能,進一步加深對所學基本理論的理解, 對實驗所用的測試工具能夠正確和熟練地使用,并能撰寫規范的測試文檔,達到能夠根據軟件需要進行軟件的測試設計、實施和管理的目標。
綜合性實驗主要是使學生掌握黑盒測試技術, 白盒測試技術;了解單元測試,集成測試,系統測試的方法;掌握測試用例的撰寫與管理; 熟悉自動化功能測試工具QTP 和性能測試工具LoadRunner 的基本使用方法,具備軟件測試人員的工程應用能力。 本實驗要做以下工作:
第一,確定測試系統。 測試工程實踐需要著重解決的問題是項目的設計,既要考慮滿足教學的條件與要求,又要實現與實際測試工作的對接,并體現測試過程的特征。對于測試工程實踐,根據軟件企業測試工作實際,選擇基于網絡的應用系統軟件,該項目的測試環境易于搭建,測試項目比較容易從企業或實際中獲得,教學活動也比較容易組織和實施,測試實踐的內容也比較豐富,自動化測試工具的運用較多,操作過程與結果分析也易見,以實際測試工程項目作為進行實訓的載體,通過項目的協同完成,培養職業綜合能力。
第二,測試過程。在學生有一定軟件測試理論知識的基礎后,布置實驗要求,學生按實驗需求,設計測試計劃與策略,撰寫測試用例,逐項展開黑盒測試、白盒測試、自動化功能與性能測試。
第三,學生分組。 把全班學生按5-6 人進行分組,并選定一名組長。
第四,分配任務。每個小組根據成員能力水平和任務難度,給每個成員分配一定的任務,并按測試計劃完成相應的實驗任務要求。
本實驗可以考慮以下方法:
第一,案例教學。教師針對重要的測試技術,有針對性地設計了教學案例,并注重案例的趣味性、實用性和易學習性,使學生可以輕松地將測試理論運用到生產實踐中。
第二,項目驅動。在軟件測試課程最后,可以通過一個綜合案例的運用,讓學生掌握所學的知識。如采取web 網站系統的測試為例。教師可以模擬企業實際開發的場景, 把班級的同學分為幾個不同角色,如開發人員、需求分析人員、測試用例編程人員、黑盒測試人員、白盒測試人員、用例管理人員、自動化功能測試人員、自動化性能測試人員等。 讓學生熟悉企業在實際項目中的開發流程,增強學生的興趣與動力。
首先,教師把web 系統的測試功能給同學們講解清楚,并提供相應的規格需求說明書,然后,學生按照老師的要求,自個進行自己的工作,最后,提交測試報告。 通過這樣的一個環節,能夠讓學生綜合所學的知識,如測試用例的設計,需要考慮黑盒測試和白盒測試,不同測試方法的重點不同,可以從功能入手,也可以從界面和性能入手,此時就可以鍛煉學生自主分析的能力。 綜合實踐環節的最后,還需同學們提交測試缺陷報告,這次過程中,需要把各個同學的測試內容整合起來,存在相互合作溝通的問題。 通過一個實際完整的測試方案項目的執行,學生更容易掌握所學知識,為今后工作奠定了基礎。
軟件測試課程是軟件工程專業的核心重要課程,通過開展綜合性設計實驗,學生的實踐能力得到了明顯地提高。
[1]程靜,孫占鋒.軟件人才創新教育培養模式的研究與實踐[J].教育與職業,2009(29):111-112.
[2]蘭景英,范勇.基于項目驅動的軟件測試人才培養模式[J].計算機教育,2011,6:32-35.
[3]王帥,朱彬,李麗萍.軟件測試課程建設的幾點措施[J].計算機教育,2011,16:66-68.