亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        分組軟件測試教學(xué)法探討

        2008-12-31 00:00:00許棣華朱立華
        計算機(jī)教育 2008年14期

        摘要:本文提出了一種新的教學(xué)手段——分組軟件測試教學(xué)法,并針對當(dāng)前高等教育中的計算機(jī)語言教學(xué)的弊端,分析了分組軟件測試教學(xué)法的教學(xué)效果及意義。

        關(guān)鍵詞:分組軟件測試;軟件測試;編程興趣;測試用例

        中圖分類號:G642文獻(xiàn)標(biāo)識碼:B

        1分組軟件測試教學(xué)法

        1.1軟件測試方法

        軟件測試是伴隨著軟件的產(chǎn)生而產(chǎn)生的,它是一種歷史悠久的,用來評價軟件的正確性、健壯性、功效和易用性的方法。當(dāng)學(xué)生在編寫完一個程序,并通過編譯過程(語法檢查),最想知道的是這個程序是否符合當(dāng)初題目所提出的要求,是否完成了所規(guī)定的功能,這就需要對程序進(jìn)行測試。從軟件工程的角度來講,這個過程就是要對軟件進(jìn)行單元測試的過程。白盒測試和黑盒測試是目前兩種最主要的測試技術(shù)。盒子是指被測試的軟件(或程序),白盒指的是源代碼或內(nèi)部邏輯結(jié)構(gòu)是可見的,反之就被稱為黑盒。就低年級學(xué)生的實際知識面水平來看,我們主要通過黑盒測試來引導(dǎo)學(xué)生測試程序的正確性。

        黑盒測試又稱功能測試或數(shù)據(jù)驅(qū)動測試,它的測試過程如圖1。

        程序運行后,通過終端輸入測試數(shù)據(jù),得到輸出結(jié)果(也稱測試結(jié)果)。根據(jù)測試結(jié)果和預(yù)期結(jié)果的比較,可以對程序是否正確作出判斷,對存在哪些缺陷作出分析和評價,進(jìn)而思考采取何種相應(yīng)措施。黑盒測試的過程簡單,思路清晰,易于學(xué)生接受。

        1.2實例闡述

        軟件測試是個很有趣的過程,可是在測試過程及其相關(guān)環(huán)節(jié)中會遇到很多問題。這些問題的解答有利于對學(xué)生的正確引導(dǎo),培養(yǎng)他們的興趣。譬如,我們知道軟件測試的目的是為了發(fā)現(xiàn)程序中的錯誤,而不是證明程序沒有錯誤。對于這一點,很多學(xué)生無法理解。為了理解這個問題,首先要使學(xué)生正確認(rèn)識軟件錯誤。就目前學(xué)生的知識,可以提出以下三個問題:

        (1) 軟件能否徹底被測試?回答是否定的??梢砸浴耙辉畏匠蘟x2+bx+c=0求根”的程序為例(例1),該程序需要輸入a、b、c這3個實數(shù),每輸入一組數(shù)據(jù),都會有不同結(jié)果(無實根、有兩個相等的實根、有兩個不等的實根),顯然,測試用例可以有無限多組(視不同的計算機(jī)硬件)。應(yīng)該指出的是,軟件不能被徹底的測試并不否認(rèn)軟件測試的作用。

        (2) 發(fā)現(xiàn)的錯誤越多,是否說明殘留的錯誤越少?回答是否定的。因為修改過的程序可能引起更多的其他錯誤。引導(dǎo)學(xué)生理解“回歸測試”的概念,教會學(xué)生耐心并細(xì)致地保留測試數(shù)據(jù)及結(jié)果,根據(jù)修改的程序適當(dāng)改變測試用例集等問題。

        (3) 程序中的有些錯誤是否能在較早的時候避免?回答是肯定的。如在“判斷三條邊a、b、c可以構(gòu)成何種三角形”的程序中(例2),如果在編寫源代碼前畫出程序流程圖,弄清楚不同形狀三角形之間的邏輯關(guān)系(見圖2),那么這將給測試減少了很多不必要的麻煩。

        通過圍繞測試及相關(guān)問題的解答,使學(xué)生明白了軟件錯誤的概念,進(jìn)行軟件測試的目的、步驟和基本方法。并配合具體例題進(jìn)行說明和比較,在“提問-回答-解答-討論-驗證”的過程中,不僅活躍了課堂氣氛,更重要的是拓寬了學(xué)生的知識面,打破原有的編程過程中“靜”的一面,而是在“動”的過程中激發(fā)學(xué)生對程序更深層次的理解,培養(yǎng)了學(xué)生的編程興趣,使學(xué)生真正成為學(xué)習(xí)的主體,從而提高了他們分析問題和解決問題的能力。具體表現(xiàn)在以下幾個方面:

        第一,引導(dǎo)學(xué)生養(yǎng)成良好的編程習(xí)慣,教會學(xué)生遇到問題不要心急,而是在編寫源代碼前,分析問題,弄清事物之間的內(nèi)在聯(lián)系,抓住問題的本質(zhì)特點,提高他們將具體問題進(jìn)行數(shù)學(xué)抽象的能力,將問題的解決用流程圖的方式體現(xiàn)出來。這部分工作時間會用得多一些,對于初學(xué)者來說也容易忽視的,應(yīng)該鼓勵學(xué)生多作嘗試。

        第二,引導(dǎo)學(xué)生在設(shè)計測試用例時學(xué)會區(qū)分測試用例之間的等價關(guān)系,適當(dāng)減少測試用例,提高測試的效率。例如,在例1中,分別找到一元二次方程在無實根、有兩個相等的實根、有兩個不等的實根三種情況下的三組測試用例即可。而在例2中,只要找出普通三角形、直角三角形、等腰三角形、等腰直角三角形、等邊三角形這幾組測試用例即可。這樣使得測試輸入的數(shù)據(jù)大大減少,并且覆蓋了幾乎所有的測試數(shù)據(jù)。

        第三,引導(dǎo)學(xué)生在測試時,適當(dāng)增加對邊界條件的測試用例。例如,在例1中,在a=0時就構(gòu)不成一元二次方程,而是一元一次方程。在a=0的情況下,又有b=0或者b!=0的不同情況,等等;在例2中,要考慮輸入的三角形的三個邊的邊長a、b、c是否能構(gòu)成三角形,如果出現(xiàn)負(fù)數(shù)或零,程序該如何處理等問題。這些雖然不是程序的主要功能,但不可忽視,因為在實際應(yīng)用中可能出現(xiàn)。如果程序中對這些邊界條件都進(jìn)行了處理,顯然程序是健壯的。

        第四,當(dāng)發(fā)現(xiàn)測試結(jié)果與預(yù)期結(jié)果存在差異時,引導(dǎo)學(xué)生能正確判斷可能出現(xiàn)的問題。要會使用適當(dāng)?shù)恼{(diào)試工具,找出錯誤所在。這一步也極為關(guān)鍵。以VC++6.0為例,有設(shè)置斷點(Breakpoint)、跟蹤(Trace)和觀察(View)等步驟,學(xué)生只要掌握了這些步驟,幾乎可以找到程序開發(fā)中可能產(chǎn)生的所有錯誤。

        1.3分組測試

        由于在測試過程中,不斷使用“回歸測試”,使得測試和調(diào)試的時間大大增加,很s多學(xué)生可能出現(xiàn)不耐煩的心理,甚至喪失信心,這時可采用學(xué)生之間分組交換測試的方法,即第一組的學(xué)生的程序,由第二組學(xué)生來測試,第二組學(xué)生的程序由第一組學(xué)生來,互相記錄下各自的測試數(shù)據(jù)及結(jié)果,判斷是否與預(yù)期結(jié)果一致,分析可能出現(xiàn)的問題及解決方案。這樣既可以增強合作與競爭意識,又可以使他們換位思考,拓寬思路,活躍課堂氣氛從而提高學(xué)生的實際編程能力。

        2教學(xué)效果和意義

        實踐表明,采用分組軟件測試教學(xué)法來培養(yǎng)和激發(fā)學(xué)生的編程興趣,切實提高學(xué)生編程能力,存在以下幾個優(yōu)勢。

        (1) 彌補了學(xué)生之間的差距

        眾所周知,學(xué)生應(yīng)是教學(xué)的主體,但是大學(xué)生入學(xué)的計算機(jī)水平差距呈現(xiàn)加大的趨勢。城市的學(xué)生、初等教育比較發(fā)達(dá)的地區(qū)的學(xué)生,較早地接受了計算機(jī),也具備學(xué)習(xí)計算機(jī)的物質(zhì)條件,因此計算機(jī)基本知識多于邊遠(yuǎn)、基礎(chǔ)教育不發(fā)達(dá)地區(qū)的學(xué)生。而且隨著時間的推移,這種差距還在擴(kuò)大。

        面對計算機(jī)學(xué)科這門實踐性很強的學(xué)科,需要具有動手能力和自我發(fā)現(xiàn)問題、獲取知識、解決問題的能力,采用分組軟件測試教學(xué)法,將學(xué)生按基礎(chǔ)水平高低搭配分組。學(xué)生之間就可以進(jìn)行互相討論,互相學(xué)習(xí),自我完善,有效地彌補了學(xué)生之間的差距,增強了學(xué)生彼此之間的感情,培養(yǎng)了學(xué)生的學(xué)習(xí)熱情。

        (2) 教學(xué)模式轉(zhuǎn)為以學(xué)生為中心

        采用分組軟件測試教學(xué)法,有效地將傳統(tǒng)的“以教師為中心”的教學(xué)模式轉(zhuǎn)變?yōu)椤耙詫W(xué)生為中心”,克服了傳統(tǒng)教學(xué)模式的弊端,使學(xué)生在獲取知識的過程中變被動為主動。體現(xiàn)在自己思考問題、自己去試著解決問題,通過不同方式嘗試失敗的痛苦與成功的喜悅,積極與教師之間進(jìn)行信息傳達(dá)與交互。在教學(xué)過程中,教師在正常的理論授課的同時,更注重學(xué)生的個性,因材施教,對后面教學(xué)起到了積極推動和指導(dǎo)作用。

        (3) 改善教學(xué)計劃安排

        作為通識基礎(chǔ)課,有一個普遍的現(xiàn)象,就是教學(xué)內(nèi)容多,課時相對少。以我?!案呒壵Z言程序設(shè)計”為例,講授的內(nèi)容有14章之多,涉及到C語言的基本語法,結(jié)構(gòu)化設(shè)計思想,數(shù)組、指針、文件等高級應(yīng)用和一些經(jīng)典算法等,知識點多,而理論課只有40課時。要在這么短的時間內(nèi)讓學(xué)生掌握這門課,確實很難。

        采用了分組軟件測試教學(xué)法,我們不要求教師在講授課程時面面俱到,而是要讓學(xué)生領(lǐng)會精神,從增強學(xué)生的學(xué)習(xí)熱情出發(fā),從培養(yǎng)學(xué)生的編程興趣出發(fā),領(lǐng)會程序設(shè)計的主要思想,變被動學(xué)習(xí)為主動學(xué)習(xí),變單向傳授為正向互動。對學(xué)生在測試過程中遇到的共同問題,教師集中解答,有效提高了課堂使用率。

        (4) 完善成績評價體系

        目前計算機(jī)教育的評價與測量存在評價方式單一的問題。以考試為導(dǎo)向的評價體系而不是以能力為導(dǎo)向的評價體系依然占主導(dǎo)地位, 分?jǐn)?shù)成為衡量學(xué)生學(xué)習(xí)效果的主要標(biāo)志, 因此學(xué)生自主學(xué)習(xí)主動學(xué)習(xí)受到限制。

        采用分組軟件測試教學(xué)法,讓學(xué)生分組,展開分組討論,進(jìn)行分組協(xié)作學(xué)習(xí),分組之間程序互查,校錯,而教師只對共同的疑點、難點給予相應(yīng)的指導(dǎo),對完成時間、功能實現(xiàn)、軟件性能等方面給予評價,作為最終成績的重要組成部分,這樣不僅對消除了當(dāng)前成績評價體系帶來的弊端,也活躍了教學(xué)氣氛,大大提高了學(xué)生的積極性。

        (5) 培養(yǎng)了師生之間的感情

        大學(xué)生大多遠(yuǎn)離家鄉(xiāng),缺少親情,同時對中學(xué)老師的悉心照顧念念不忘,所以在走進(jìn)大學(xué)校門后,特別需要教師的關(guān)心和重視。但是由于大學(xué)學(xué)習(xí)的特點就是鼓勵自學(xué),發(fā)現(xiàn)自我價值,所以很多低年級的學(xué)生不能適應(yīng)。

        這要求我們教師在對低年級新生教學(xué)過程中,在注重知識的傳授的同時, 更要注重學(xué)生情感的培養(yǎng)。采用分組軟件測試教學(xué)法,使得教師能夠有效地注重學(xué)生的個性化發(fā)展,注重挖掘?qū)W生的潛力,有效傳達(dá)課堂知識,從而培養(yǎng)和增進(jìn)了師生間的感情。其結(jié)果必然是學(xué)生興趣的提高和學(xué)生自主學(xué)習(xí)能力的提升。

        (6) 培養(yǎng)了學(xué)生面對挫折勇往直前的品質(zhì)

        大學(xué)的教育更應(yīng)該是人生的教育,面對大學(xué)生尤其是低年級的學(xué)生,挫折教育尤為重要。怎樣正確對待挫折,會影響他們的一生。

        采用分組軟件測試教學(xué)法,使學(xué)生在和諧的氛圍中,遇到困難后不是逃避而是正視,不是置之不理,而是積極解決。這種精神正是當(dāng)代大學(xué)生的應(yīng)該具備的素質(zhì),是我們通向成功的必由之路。

        3結(jié)束語

        綜上所述,分組軟件測試教學(xué)法,這種從培養(yǎng)學(xué)生編程興趣出發(fā),以軟件測試基本理論為依據(jù),學(xué)生分組形式為輔助,以提高學(xué)生的實際編程能力為目的的教學(xué)手段,徹底改變了原有教學(xué)模式帶來的弊端。它更尊重學(xué)生的自我發(fā)展與完善,更能體現(xiàn)個性化教學(xué)。我們在實施過程中也深深體會到,分組軟件測試教學(xué)法,作為計算機(jī)“高級語言程序設(shè)計”等通識基礎(chǔ)課的有效教學(xué)手段,不僅為學(xué)生提供了新的學(xué)習(xí)動力和學(xué)習(xí)方法,更為師生互動提供了有利平臺,大大改善了實際教學(xué)效果。

        參考文獻(xiàn):

        [1] 蘇小紅. C語言大學(xué)實用教程(第二版)[M]. 北京:電子工業(yè)出版社,2007.

        [2] 潭浩強. C程序設(shè)計(第二版)[M]. 北京:清華大學(xué)出版社,2002.

        [3] 古樂,史九林. 軟件測試技術(shù)[M]. 北京:清華大學(xué)出版社,2006.

        [4] 鄭人杰. 實用軟件工程(第二版)[M]. 北京:清華大學(xué)出版社,2004.

        [5] 韓雪. 高校公共計算機(jī)教學(xué)現(xiàn)狀及存在的問題[J]. 福建電腦,2005,(5).

        [6] 劉勇賢. 淺論大學(xué)計算機(jī)的教學(xué)現(xiàn)狀及應(yīng)對策略[J]. 黑龍江技術(shù)信息,2007,(7).

        [7] 孟瑋. 如何提高學(xué)生學(xué)習(xí)計算機(jī)的興趣[J]. 遼寧教育,2006,(7).

        亚洲av无码一区二区乱孑伦as| 白色白色白色在线观看视频| 日本在线观看不卡一区二区| 日日摸天天摸97狠狠婷婷| 色翁荡息又大又硬又粗又视频图片 | 亚洲欧美日韩精品香蕉| 国产精品毛片一区二区三区 | 亚洲区小说区图片区| 亚洲一区极品美女写真在线看| 天堂蜜桃视频在线观看| 成人毛片av免费| 爱a久久片| 国产激情视频在线观看你懂的| 日本午夜理论片在线观看| 精东天美麻豆果冻传媒mv| 国产美女免费国产| 成av人片一区二区三区久久| 虎白女粉嫩粉嫩的18在线观看| 精品久久久久久无码人妻热| 久久狠狠第一麻豆婷婷天天| 中文字幕精品乱码一二三区| 少妇精品亚洲一区二区成人| 日日摸日日碰夜夜爽无码| 亚洲av无码一区二区乱子仑| 国产丝袜美腿嫩模视频诱惑| 麻豆国产精品va在线观看不卡| 日本三级欧美三级人妇视频| 亚洲免费毛片网| 国产自拍偷拍视频免费在线观看| 久久久无码精品亚洲日韩按摩| 亚洲AV无码专区一级婬片毛片| 男女啪啪免费视频网址 | 欧美在线资源| 国产一区二三区中文字幕| 99久久精品无码一区二区毛片| 日韩人妻无码一区二区三区久久99| 亚洲欧美日韩在线精品2021| 麻豆精品一区二区三区| 国内精品视频在线播放不卡| 日韩AV有码无码一区二区三区 | 一本久道久久综合久久|