国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于項(xiàng)目驅(qū)動(dòng)的《軟件測試》課程教學(xué)研究

2018-08-17 09:22:06張正金石寶金
巢湖學(xué)院學(xué)報(bào) 2018年3期
關(guān)鍵詞:測試用例軟件測試案例

張正金 石寶金

(1 巢湖學(xué)院,安徽 巢湖 238000)(2 蚌埠學(xué)院,安徽 蚌埠 233000)

1 引言

隨著軟件規(guī)模的不斷發(fā)展,軟件基本支撐已經(jīng)深入到各行各業(yè)的核心業(yè)務(wù),軟件的結(jié)構(gòu)也變得日益復(fù)雜,因此軟件測試作為保證軟件質(zhì)量最直接的一種手段,在軟件開發(fā)過程中也顯得尤為重要,對軟件工程師的需求量也日益增加。軟件測試在高校教學(xué)中是一門理論性和實(shí)踐性都很強(qiáng)的專業(yè)課,它是軟件工程專業(yè)的必修課程。該課程對于人才培養(yǎng)的目標(biāo)是:掌握軟件測試的基本理論和基本方法,常用的軟件測試方法以及自動(dòng)化測試工具的使用,能夠設(shè)計(jì)測試用例,編寫測試用例,執(zhí)行測試用例,完成軟件的基本測試的能力[1-2]。

目前,軟件測試類人才需求量很大,企業(yè)迫切需要專門的軟件測試類人才。為了適應(yīng)行業(yè)人才需要,各大高校相繼開設(shè)了軟件測試類的相關(guān)課程。但軟件測試是一門新興的課程,傳統(tǒng)的教學(xué)方式往往是將理論知識與實(shí)踐環(huán)節(jié)分開教學(xué),造成學(xué)生缺乏對軟件測試過程的完整認(rèn)識;對于理論知識講述過程中,用一些簡單的案例來加以說明,沒有專門介紹測試的整個(gè)過程,學(xué)生缺乏在軟件測試過程中對項(xiàng)目的整體理解。因而導(dǎo)致學(xué)生學(xué)習(xí)軟件測試的積極性不高。如何在軟件測試的教學(xué)過程中調(diào)整和改進(jìn)傳統(tǒng)的教學(xué)方法,已經(jīng)是一個(gè)迫切需要解決的問題[3-4]。

2 軟件測試教學(xué)過程中存在的主要問題

問題一:教材。對于軟件測試這門課程,每個(gè)學(xué)校都有不同的行情,工具書種類繁多,但真正適合高校有關(guān)軟件測試的教材偏少,而且內(nèi)容偏向于通用型指導(dǎo),基本都是過多的強(qiáng)調(diào)于理論知識,沒有將理論知識與實(shí)際應(yīng)用相聯(lián)系,實(shí)踐效果較差。其次教材對于軟件測試工具的介紹都是泛泛而談,可操作性差,案例簡單,難以讓學(xué)生產(chǎn)生興趣。

問題二:缺乏項(xiàng)目經(jīng)驗(yàn)。軟件測試是理論與實(shí)踐相綜合的一門課程,是一項(xiàng)需要實(shí)際項(xiàng)目開發(fā)經(jīng)驗(yàn)和基礎(chǔ)的工作。高校教師通常沒有企業(yè)開發(fā)經(jīng)驗(yàn),更沒有軟件測試的經(jīng)驗(yàn),而軟件測試是一門實(shí)踐性極強(qiáng)的課程,沒有開發(fā)經(jīng)驗(yàn)的教師來講授這門課程時(shí),只能停留在理論知識層面,很難讓學(xué)生對項(xiàng)目有整體認(rèn)識,讓學(xué)生很難理解將測試作為一個(gè)項(xiàng)目來完成。

問題三:缺乏案例教學(xué)。軟件測試在教學(xué)過程中需要豐富的案例來講述各個(gè)知識點(diǎn)。案例多種多樣,規(guī)模大小不一,難度也不同,從而使得在真正的教學(xué)中案例難求。在實(shí)際教學(xué)中往往就是列舉一些小程序或者簡單的項(xiàng)目,案例在整個(gè)教學(xué)中是孤立的,很難與軟件測試的基本知識點(diǎn)緊密聯(lián)系到一起,從而造成學(xué)生難以將掌握的知識應(yīng)用到實(shí)際的案例中去,對測試項(xiàng)目的整體把握能力也有所欠缺。

3 基于項(xiàng)目驅(qū)動(dòng)式的軟件測試的課程教學(xué)的研究

基于以上所述問題,以及結(jié)合在實(shí)踐教學(xué)中的經(jīng)驗(yàn),提出了以項(xiàng)目驅(qū)動(dòng)的方式來開展軟件測試的教學(xué)工作,同時(shí)結(jié)合學(xué)生的專業(yè)特點(diǎn),將構(gòu)建主義作為學(xué)生學(xué)習(xí)的理論基礎(chǔ),以學(xué)生學(xué)習(xí)為中心;在實(shí)際的教學(xué)過程中,教師僅僅是知識的構(gòu)建者,不是知識的灌輸者,學(xué)生成為知識信息加工的主體,學(xué)生學(xué)習(xí)由被動(dòng)的接受變成主動(dòng)的探尋[2]?;陧?xiàng)目驅(qū)動(dòng)式的教學(xué)模式,將軟件測試課程的內(nèi)容進(jìn)行整合與優(yōu)化,提煉出知識點(diǎn),對于實(shí)際項(xiàng)目也需分成不同部分,從而達(dá)到教學(xué)形式的多樣化,具體的思路如下:

(1)項(xiàng)目資源的建設(shè)。課程的開展最終是以項(xiàng)目為核心,因此整個(gè)教學(xué)活動(dòng)也是始終圍繞項(xiàng)目展開,在講述軟件測試的基本知識的時(shí)候以項(xiàng)目中的實(shí)際案例來開展教學(xué)。項(xiàng)目來源可以通過教師的專業(yè)課程設(shè)計(jì),高校教師指導(dǎo)學(xué)生的孵化項(xiàng)目,也可以是歷年來畢業(yè)設(shè)計(jì)中的經(jīng)典作品,同時(shí)還可以是教師參加企業(yè)的掛職鍛煉時(shí)參與企業(yè)接洽的實(shí)際項(xiàng)目,并經(jīng)企業(yè)同意后可以作為學(xué)生的教學(xué)案例來教學(xué)。本文主要以項(xiàng)目:微信掃碼app(皖維孵化項(xiàng)目)和電子商務(wù)網(wǎng)站(團(tuán)購商城網(wǎng)站開發(fā)—基于ssm框架,由本校協(xié)同創(chuàng)新中心教師團(tuán)隊(duì)成員開發(fā))為例加以講述。

(2)教學(xué)環(huán)節(jié)設(shè)計(jì)。在實(shí)際教學(xué)中,需要將項(xiàng)目的知識點(diǎn)劃分成一個(gè)個(gè)具體的、易于理解和掌握的任務(wù),以提出問題或者分發(fā)任務(wù)的形式來組織課堂教學(xué)過程,調(diào)動(dòng)起學(xué)生學(xué)習(xí)的興趣和動(dòng)力,變被動(dòng)為主動(dòng)。

(3)教學(xué)過程設(shè)計(jì)如表1所示。

表1 軟件測試各階段教學(xué)過程

因此,項(xiàng)目驅(qū)動(dòng)方式下的課程教學(xué),有利于提高教學(xué)效果,激發(fā)學(xué)生學(xué)習(xí)的積極性,有利于學(xué)生主動(dòng)地去學(xué)習(xí)和探索軟件測試技術(shù)。由實(shí)踐經(jīng)驗(yàn)來促進(jìn)對基本理論知識的學(xué)習(xí),在實(shí)際項(xiàng)目中有效地鍛煉了遇到問題解決問題的能力,極大地提高了學(xué)生的動(dòng)手能力。

4 項(xiàng)目驅(qū)動(dòng)方式的具體實(shí)施過程

項(xiàng)目驅(qū)動(dòng)方式需要學(xué)生有一定的編程基礎(chǔ),需有Java和C語言基礎(chǔ)。將學(xué)生進(jìn)行分組,每個(gè)小組選出一名項(xiàng)目組長,成員構(gòu)成為一個(gè)測試組長和若干成員。每位成員都需負(fù)責(zé)一個(gè)模塊的開發(fā)與設(shè)計(jì),同時(shí)還要負(fù)責(zé)另外一個(gè)學(xué)生的模塊測試工作,將課程教學(xué)分成多個(gè)層次來進(jìn)行。

以團(tuán)購商城項(xiàng)目為例,項(xiàng)目包括登錄模塊,用戶訂單管理,購物模塊,訂單處理,購物車模塊等構(gòu)成。

第一個(gè)階段:課程導(dǎo)入。

第一階段以理論知識為先導(dǎo),在接觸真正的項(xiàng)目之前,需要有一定的測試?yán)碚摓榛A(chǔ)。

教學(xué)重點(diǎn):涵蓋軟件測試的定義,介紹軟件測試人才的現(xiàn)狀,列舉相關(guān)經(jīng)典案例,如微軟發(fā)布的最新操作系統(tǒng),其測試人員的需求要遠(yuǎn)遠(yuǎn)多于開發(fā)人員;介紹文檔測試的相關(guān)知識點(diǎn),為學(xué)生進(jìn)行初期的軟件測試做準(zhǔn)備,激發(fā)出學(xué)生的動(dòng)手能力。

教學(xué)內(nèi)容:講述軟件測試的基本原則,測試文檔的規(guī)范性要求,制定測試用例,設(shè)計(jì)測試用例以及執(zhí)行測試用例等。結(jié)合微信掃碼app項(xiàng)目,驗(yàn)證測試文檔規(guī)范性的重要性,在該項(xiàng)目中抽出文檔規(guī)范要點(diǎn),并進(jìn)行重點(diǎn)分析。

第二階段:基礎(chǔ)知識。

教學(xué)重點(diǎn):針對具體的項(xiàng)目分模塊化開發(fā),引出軟件測試基礎(chǔ)理論,包括白盒測試技術(shù):如程序結(jié)構(gòu)分析、邏輯覆蓋、獨(dú)立路徑、循環(huán)測試、程序插裝等方法;對于微信app項(xiàng)目,利用項(xiàng)目執(zhí)行流程可以應(yīng)用白盒測試方法中的場景法去模擬學(xué)生簽到的過程,得出基本流與備選流,構(gòu)建出場景圖,同時(shí)對于程序段進(jìn)行邏輯覆蓋,分別進(jìn)行語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、路徑覆蓋等方法。黑盒測試技術(shù):如等價(jià)類劃分、邊界值測試、因果圖與判定表法、正交實(shí)驗(yàn)設(shè)計(jì)法、場景法以及錯(cuò)誤推測法等方法。在電子商務(wù)網(wǎng)站項(xiàng)目中,如登錄模塊中利用黑盒測試中的等價(jià)類方法和邊界值方法對用戶名、密碼進(jìn)行等價(jià)類劃分和邊界值等進(jìn)行測試,并匯總測試用例集合。

案例結(jié)果分析如表2所示,通過表2的分析與實(shí)際上課過程中將項(xiàng)目與理論知識相結(jié)合,從而實(shí)現(xiàn)以項(xiàng)目引導(dǎo)講授課程理論知識部分。

表2 測試案例結(jié)果分析表

教學(xué)內(nèi)容:擴(kuò)展如下部分:程序靜態(tài)測試與動(dòng)態(tài)測試相結(jié)合,程序走讀與靜態(tài)分析;介紹單元測試工具:如對于各個(gè)模塊的測試使用JUnit4測試框架進(jìn)行單元測試、C++Test測試框架等,以引入自動(dòng)化測試做準(zhǔn)備工作。

第三階段:知識凝練。

教學(xué)重點(diǎn):對開發(fā)好的模塊之間根據(jù)程序結(jié)構(gòu)進(jìn)行集成操作,引出集成測試相關(guān)知識。集成測試方法:基于分解集成,基于調(diào)用圖集成以及基于MM路徑集成等方法,同時(shí)須介紹典型的測試 工 具 LoadRunner,QuickTest,TestDirector 等 的使用。如電子商務(wù)網(wǎng)站登錄模塊、用戶管理模塊、訂單管理模塊、購物車模塊、修改注冊資料模塊等進(jìn)行組裝測試分別按基于分解集成中的自頂向下和自底向上集成方法,基于MM路徑集成方法進(jìn)行測試,并匯總測試用例集合。

教學(xué)內(nèi)容:擴(kuò)展如下部分:對功能測試進(jìn)行設(shè)計(jì)與實(shí)施,測試管理:強(qiáng)調(diào)對測試進(jìn)行有效管理的重要性,對軟件測試需求、測試用例、測試計(jì)劃的實(shí)施與執(zhí)行和缺陷管理等進(jìn)行計(jì)劃和實(shí)施。

第四階段:綜合考核

教學(xué)重點(diǎn):如何組織測試工作,對于整個(gè)項(xiàng)目實(shí)施的過程中,使學(xué)生對軟件測試中的各種測試技術(shù)進(jìn)行熟練的掌握后,組織各個(gè)團(tuán)隊(duì)進(jìn)行項(xiàng)目展示和答辯,并完成驗(yàn)收測試,撰寫測試總結(jié)報(bào)告,提高實(shí)踐能力。

考核方式:對于以上每個(gè)階段需提交相關(guān)的文檔說明,包括測試計(jì)劃、測試方案、測試方法、設(shè)計(jì)與執(zhí)行測試用例,完成缺陷統(tǒng)計(jì)與分析,以及項(xiàng)目測試報(bào)告書。對學(xué)生的工作進(jìn)行評定,提出優(yōu)點(diǎn)和不足的地方,激發(fā)學(xué)生熱情。

根據(jù)具體的項(xiàng)目合理安排工作量,合理分配人員及設(shè)置時(shí)間節(jié)點(diǎn),

工作過程如表3所示:

表3 測試任務(wù)進(jìn)度安排

用項(xiàng)目驅(qū)動(dòng)的方式來實(shí)施整個(gè)教學(xué)過程,學(xué)生作為項(xiàng)目的主體,提高了學(xué)生的參與熱情,激勵(lì)了學(xué)生主動(dòng)參與到實(shí)際教學(xué)活動(dòng)中,在實(shí)際的實(shí)踐中掌握了測試技能。

5 結(jié)語

從實(shí)際效果來看,以項(xiàng)目驅(qū)動(dòng)的方式在軟件測試課程中加以實(shí)踐與運(yùn)用,更符合專業(yè)技能課程的學(xué)習(xí)形式,有利于激發(fā)學(xué)生的學(xué)習(xí)興趣以及對軟件測試形成整體認(rèn)識,符合軟件工程專業(yè)培養(yǎng)的目標(biāo)。在具體的實(shí)施過程中,需要教師加以控制,能有效的組織整個(gè)項(xiàng)目的實(shí)施及把握進(jìn)度,并將測試的相關(guān)理論知識融入到項(xiàng)目的各個(gè)階段。同時(shí)也需要教師有著豐富的項(xiàng)目測試經(jīng)驗(yàn),關(guān)注培養(yǎng)學(xué)生的創(chuàng)新意識和創(chuàng)新能力。這也需要不斷的在教學(xué)過程中加以學(xué)習(xí)、探索和總結(jié)。

猜你喜歡
測試用例軟件測試案例
案例4 奔跑吧,少年!
基于SmartUnit的安全通信系統(tǒng)單元測試用例自動(dòng)生成
基于OBE的軟件測試課程教學(xué)改革探索
隨機(jī)變量分布及統(tǒng)計(jì)案例拔高卷
EXCEL和VBA實(shí)現(xiàn)軟件測試記錄管理
電子制作(2018年16期)2018-09-26 03:27:18
基于混合遺傳算法的回歸測試用例集最小化研究
關(guān)于軟件測試技術(shù)應(yīng)用與發(fā)展趨勢研究
電子測試(2017年15期)2017-12-18 07:19:20
發(fā)生在你我身邊的那些治超案例
中國公路(2017年7期)2017-07-24 13:56:38
軟件測試工程化模型及應(yīng)用研究
一個(gè)模擬案例引發(fā)的多重思考
长宁区| 方城县| 赫章县| 芦山县| 双城市| 桐梓县| 清水河县| 甘孜县| 陈巴尔虎旗| 杭锦旗| 灵宝市| 温泉县| 三都| 板桥市| 逊克县| 虹口区| 东乌珠穆沁旗| 安丘市| 砀山县| 萝北县| 香河县| 介休市| 潼南县| 宁海县| 柏乡县| 台山市| 唐山市| 汤阴县| 安国市| 樟树市| 漾濞| 辉县市| 永靖县| 政和县| 湘乡市| 永登县| 锦州市| 黎川县| 黎平县| 永寿县| 茶陵县|