吳岳洲 傅強(qiáng) 羅銀輝
[摘 要] “軟件測試”作為計算機(jī)科學(xué)與技術(shù)專業(yè)的核心專業(yè)課,其教學(xué)內(nèi)容覆蓋面廣,對學(xué)生的理論及實踐能力均要求較高。民航類院校在新工科背景下的民航“軟件測試”教育主要以工程應(yīng)用為導(dǎo)向,使學(xué)生在掌握軟件測試技術(shù)基礎(chǔ)理論與應(yīng)用的基礎(chǔ)上,為后期專業(yè)課程學(xué)習(xí)與工程能力提升奠定良好的軟件技術(shù)基礎(chǔ)。以中國民用航空飛行學(xué)院為例,為適應(yīng)新時代智慧民航軟件產(chǎn)業(yè)Wed自動化程度高的特點,選擇合理的軟件測試教材,并結(jié)合民航軟件產(chǎn)業(yè)需求對“軟件測試”課程的理論和實驗教學(xué)知識體系進(jìn)行升級,實現(xiàn)課程知識、工程實踐、學(xué)生認(rèn)知等維度的融會貫通,綜合提升“軟件測試”課程的教學(xué)效果。
[關(guān)鍵詞] 軟件測試;計算機(jī);民航;新工科
[基金項目] 2021年度中央高校教育教學(xué)改革項目“中飛院現(xiàn)代產(chǎn)業(yè)學(xué)院建設(shè)研究”(E2021041);2019年度中國民用航空飛行學(xué)院項目“民航信息技術(shù)研究中心”(JG2019-08-03)
[作者簡介] 吳岳洲(1986—),男,四川廣元人,博士,中國民用航空飛行學(xué)院計算機(jī)學(xué)院教師,高級工程師,主要從事軟件測試、計算機(jī)視覺研究。
[中圖分類號] G642.4 [文獻(xiàn)標(biāo)識碼] A[文章編號] 1674-9324(2023)12-0018-04 [收稿日期] 2022-04-22
引言
計算機(jī)軟件對國民經(jīng)濟(jì)、社會發(fā)展和國防建設(shè)有著至關(guān)重要的作用,隨著軟件產(chǎn)業(yè)迅速發(fā)展,軟件產(chǎn)品數(shù)量越來越多,軟件產(chǎn)品復(fù)雜度越來越高。2021年11月,工業(yè)和信息化部印發(fā)《“十四五”軟件和信息技術(shù)服務(wù)業(yè)發(fā)展規(guī)劃》,提出要堅持應(yīng)用牽引、生態(tài)培育,壯大信息技術(shù)應(yīng)用創(chuàng)新體系,強(qiáng)化數(shù)字經(jīng)濟(jì)發(fā)展基礎(chǔ)[1]。軟件是信息技術(shù)的核心,質(zhì)量是軟件的靈魂。測試是保障軟件質(zhì)量的重要手段,主要包括單元測試、集成測試、系統(tǒng)測試三個階段,貫穿整個軟件開發(fā)生命周期,軟件質(zhì)量直接關(guān)系軟件的可靠性和服務(wù)水平[2]。國內(nèi)軟件測試技術(shù)體系發(fā)展還處于起步階段,對應(yīng)的軟件測試人才缺口較大,對應(yīng)教學(xué)內(nèi)容的前沿性有待提升,軟件測試已經(jīng)成為學(xué)術(shù)界和產(chǎn)業(yè)界關(guān)注的焦點[3]。
本文針對民航院校新工科背景下的智慧民航發(fā)展需求,基于產(chǎn)出的教育(Outcomes-based Education, OBE)模式理念,為提升民航產(chǎn)業(yè)背景下軟件測試人才供給能力和完善軟件測試人才培養(yǎng)體系,以中國民用航空飛行學(xué)院“軟件測試”課程教學(xué)為例,通過開發(fā)完善新需求和新知識,在傳統(tǒng)理論教學(xué)的基礎(chǔ)上,強(qiáng)化工程應(yīng)用和成果導(dǎo)向,與軟件研發(fā)相結(jié)合,重構(gòu)軟件測試教學(xué)體系,難度適中的知識體系能夠有效提高學(xué)生注意力與主動思考意識。
一、新工科背景下民航知識體系選擇
軟件測試的核心是生成滿足特定準(zhǔn)則的測試數(shù)據(jù),是軟件開發(fā)活動中一個關(guān)鍵且耗時的環(huán)節(jié)。為打造民航軟件產(chǎn)業(yè)創(chuàng)新人才高地,民航類院校依托新工科發(fā)展,通過理論指導(dǎo)、教學(xué)創(chuàng)新、內(nèi)容優(yōu)化等途徑,多主體、多學(xué)科協(xié)同形成具有民航特色的工程教育體系,培養(yǎng)學(xué)生解決復(fù)雜行業(yè)軟件工程問題的能力。新工科背景下民航軟件測試人才培養(yǎng)體系、課程體系和知識體系改革需要找準(zhǔn)教育切入點和側(cè)重點,圍繞持續(xù)提升民航軟件產(chǎn)業(yè)競爭力,結(jié)合手機(jī)App、Web自動化測試、人工智能等技術(shù)發(fā)展現(xiàn)狀,主動設(shè)計和實施,適應(yīng)現(xiàn)代產(chǎn)業(yè)發(fā)展需求[4-5]。
新工科對大學(xué)軟件測試教育提出全新挑戰(zhàn),民航行業(yè)軟件Web自動化程度高、結(jié)構(gòu)復(fù)雜,傳統(tǒng)軟件測試教學(xué)結(jié)構(gòu)難以滿足其需求。中國民用航空飛行學(xué)院計算機(jī)學(xué)院選擇工業(yè)和信息化“十三五”人才培養(yǎng)規(guī)劃教材《軟件測試》,由中國工信出版集團(tuán)和人民郵電出版社聯(lián)合出版,是一部面向新工科的高等學(xué)校應(yīng)用型人才培養(yǎng)規(guī)劃教材,教學(xué)內(nèi)容具有相應(yīng)的廣度和深度,內(nèi)容深入淺出、新穎實用,不僅為學(xué)生提供專業(yè)所必需的知識結(jié)構(gòu),促進(jìn)大學(xué)生專業(yè)能力培養(yǎng)及綜合素質(zhì)的提升,還一定程度上滿足了工程教育的個性化培養(yǎng)需求和學(xué)生自身發(fā)展需要。
《軟件測試》教材知識體系包括9個章節(jié)。第1章介紹軟件測試的基礎(chǔ)知識體系,包括軟件生命周期、軟件開發(fā)模型、軟件質(zhì)量、軟件缺陷分類、軟件缺陷處理流程、軟件缺陷管理工具、軟件測試模型、軟件測試流程等;第2章介紹黑盒測試方法,包括等價類劃分法、邊界值分析法、因果圖與決策表法、正交實驗設(shè)計法等;第3章介紹白盒測試方法,包括邏輯覆蓋法(主要包括語句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋)、程序插樁法等;第4章介紹性能測試,包括性能測試指標(biāo)及分類、性能測試流程、性能測試工具(LoadRunner、JMeter)等;第5章介紹安全測試,包括安全測試原則、SQL注入、XSS跨站腳本攻擊、CSRF攻擊、滲透測試、安全測試工具等;第6章介紹自動化測試,包括自動化測試的基本流程、實施策略、常見技術(shù)、常見工具、持續(xù)集成測試等;第7章介紹移動App測試,包括移動App測試要點(UI測試、功能測試、專項測試、性能測試)、測試流程、測試工具等;第8章、第9章以軟件項目為例,講解測試需求說明書、測試計劃、測試方案、測試用例、測試腳本、測試報告、缺陷報告等的編寫,強(qiáng)化學(xué)生編碼規(guī)范和文檔書寫規(guī)范能力。
二、知識體系升級與教育
“軟件測試”課程理論教學(xué)需充分發(fā)揮教師的積極性、創(chuàng)造性、主動性,合理設(shè)計民航專業(yè)知識點或案例并應(yīng)用于教學(xué)過程,有效激發(fā)學(xué)生學(xué)習(xí)興趣。同時,由于“軟件測試”課程以工程實踐為核心,需通過實驗才能使學(xué)生深入認(rèn)識軟件質(zhì)量和測試的重要性。理論與實踐相結(jié)合,有效促進(jìn)了學(xué)生工程應(yīng)用與專業(yè)創(chuàng)新能力的形成,整個知識體系的升級體現(xiàn)為理論教學(xué)和實驗教學(xué)兩大方面。
(一)理論教學(xué)升級
通過理論教學(xué),學(xué)生應(yīng)掌握軟件測試原理、測試技術(shù)和測試管理相關(guān)的基礎(chǔ)理論和工具。傳統(tǒng)理論教學(xué)知識體系存在一定的局限性,學(xué)生在理論知識學(xué)習(xí)過程中缺乏積極性和主動性。為滿足民航新工科工程應(yīng)用需求,在選擇的工業(yè)和信息化“十三五”人才培養(yǎng)規(guī)劃教材的基礎(chǔ)上,根據(jù)教材知識體系框架,合理增設(shè)關(guān)于Selenium和Unittest的3個專題,有效支撐學(xué)生開展Web自動化程度高的民航行業(yè)軟件測試,與原有教材知識體系互補(bǔ)[6-7]。
考慮不同學(xué)生的學(xué)習(xí)進(jìn)度等因素,優(yōu)化理論教學(xué)設(shè)計和教學(xué)方法,在理論教學(xué)過程中,利用教材配套的傳智教學(xué)平臺網(wǎng)絡(luò)教學(xué)視頻資源,學(xué)生可以實現(xiàn)課前預(yù)習(xí)、課后鞏固復(fù)習(xí)、線上自習(xí)、在線作業(yè)、線上討論等,教師通過該平臺可全面掌握學(xué)生的學(xué)習(xí)進(jìn)度和對知識點的掌握情況,便于查漏補(bǔ)缺,提高課堂授課的精準(zhǔn)性。升級后的理論教學(xué)內(nèi)容見表1。
表1中專題1目的是讓學(xué)生理解自動化測試的相關(guān)概念和Selenium的特點,并搭建Web自動化測試的相關(guān)環(huán)境,掌握Web自動化測試腳本編寫的基本步驟,了解通過自動化測試開展回歸測試、壓力測試、兼容性測試的業(yè)務(wù)需求,克服手工測試的局限性,減少人為錯誤,提高測試效率。專題2要求學(xué)生熟練應(yīng)用八種元素定位方法,能夠開展瀏覽器、網(wǎng)頁元素、鼠標(biāo)、元素等待、Frame框架切換、窗口截圖等功能性操作,并掌握通過瀏覽器開發(fā)工具實現(xiàn)HTML查看和編輯、Javascript控制臺、網(wǎng)絡(luò)狀況監(jiān)視等功能的方法。專題3的目的是讓學(xué)生掌握Unittest框架的基本使用方法、斷言的使用,能夠組織多個測試用例執(zhí)行,掌握實現(xiàn)參數(shù)化和測試報告的生成。通過以上專題,學(xué)生在實驗過程中理解自動化測試對軟件測試效率的影響,了解降低軟件測試成本的重要性。
(二)實驗教學(xué)升級
通過實驗教學(xué),緊跟民航軟件行業(yè)市場Web自動化、智能化發(fā)展需求,強(qiáng)化Web自動化測試能力。安排學(xué)生設(shè)計測試用例、使用測試工具、編寫測試腳本、開展軟件測試、編寫測試報告等實際操作,結(jié)合小組綜合實驗方式,營造活躍輕松的實驗氛圍,鼓勵學(xué)生互動、師生互動,通過有效的討論、思考和實踐行為,學(xué)生更好地理解和掌握理論教學(xué)的知識體系內(nèi)容。針對實驗教學(xué)過程中學(xué)生提出的問題,通過小組內(nèi)部研討和教師指導(dǎo),引導(dǎo)學(xué)生思考問題、解決問題,培養(yǎng)學(xué)生的行業(yè)協(xié)作精神[8]。升級后的實驗教學(xué)內(nèi)容見表2。
結(jié)語
本文通過研究新工科背景下民航軟件測試行業(yè)的發(fā)展和需求,針對民航院?!败浖y試”課程知識體系進(jìn)行理論和實驗教學(xué)內(nèi)容升級。通過對中國民用航空飛行學(xué)院計算機(jī)科學(xué)與技術(shù)專業(yè)3個班級的授課,發(fā)現(xiàn)相對于傳統(tǒng)“軟件測試”課程教學(xué)模式,新模式強(qiáng)調(diào)培養(yǎng)學(xué)生分析和解決軟件質(zhì)量問題的能力,將實踐教學(xué)延伸到課堂,把產(chǎn)業(yè)需求場景搬到學(xué)校,學(xué)生課堂注意力、出勤率、測試成績都有顯著提升,有效提高了該專業(yè)課程的教學(xué)質(zhì)量。后期將探索研究引入基于大數(shù)據(jù)和人工智能的“軟件測試”課程教學(xué)專題和實踐案例,提升學(xué)生的綜合實踐創(chuàng)新能力。
參考文獻(xiàn)
[1]工業(yè)和信息化部關(guān)于印發(fā)“十四五”軟件和信息技術(shù)服務(wù)業(yè)發(fā)展規(guī)劃的通知:工信部規(guī)〔2021〕180號[A/OL].(2021-11-15)[2022-03-15].https://www.miit.gov.cn/cms_files/filemanager/1226211233/attach/20224/b1a5229d377c410abf08b46b096249b7.pdf.
[2]楊秀紅.高校軟件測試技術(shù)課程的教學(xué)改革實踐[J].大學(xué),2022(5):149-152.
[3]劉曉剛.基于移動技術(shù)的高職軟件測試課程的改革探索[J].教育教學(xué)論壇,2018(14):275-276.
[4]吳鴻韜,翟艷東,李智,等.軟件測試技術(shù)課程思政教學(xué)的探索與實踐[J].計算機(jī)教育,2021(1):89-92.
[5]王曉.軟件測試過程質(zhì)量控制管理研究[J].軟件,2022,43(1):115-117.
[6]孫晉永,蔡國永,汪華登,等.以學(xué)生為中心的“軟件測試”課程教學(xué)改革與實踐[J].教育教學(xué)論壇,2020(38):160-161.
[7]張堃.計算機(jī)軟件測試技術(shù)與開發(fā)應(yīng)用策略分析[J].電子技術(shù)與軟件工程,2021(23):24-25.
[8]姚香娟,田甜,黨向盈,等.智能優(yōu)化在軟件測試中的應(yīng)用綜述[J].控制與決策,2022,37(2):257-266.
Upgrading and Teaching of Software Testing Knowledge Systems of Civil Aviation in Emerging Engineering Education
WU Yue-zhou, FU Qiang, LUO Yin-hui
(School of Computer Science, Civil Aviation Flight University of China, Guanghan,
Sichuan 618307, China)
Abstract: As the core professional course of computer science and technology, software testing covers a wide range of teaching contents and requires high students theoretical and practical ability. The software testing education in civil aviation colleges under the background of the emerging engineering is mainly oriented to engineering application, so that the students can lay a good software technology foundation for later professional course learning and engineering ability improvement based on mastering the basic theory and application of software testing technology. Taking Civil Aviation Flight University of China as an example, to adapt to the high degree of automation of Web in the smart civil aviation software industry in the new era, reasonable software testing teaching materials are selected, the theoretical and experimental teaching knowledge system of software testing is upgraded according to the needs of the civil aviation software industry, to realize the integration of curriculum knowledge, engineering practice, student cognition, and comprehensively improve the teaching effect of software testing courses.
Key words: software testing; computer; civil aviation; emerging engineering education