版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
目錄第1章緒論 11.1選題背景 11.2編寫目標(biāo) 11.3編寫意義 1第2章需求分析 22.1功效需求描述 22.2可行性分析 22.3統(tǒng)性能需求描述 2第3章總體設(shè)計 33.1功效框圖 33.2數(shù)據(jù)字典 7第4章頁面設(shè)計 114.1最愛音樂網(wǎng)前臺設(shè)計 114.2最愛音樂網(wǎng)后臺設(shè)計 12第5章編碼實(shí)現(xiàn) 145.1B/S模式 145.2C#語言 145.3SQLServer數(shù)據(jù)庫 155.4ASP.NET技術(shù) 165.5功效實(shí)現(xiàn) 17第6章軟件布署及測試分析 236.1軟件配置 236.2測試分析 23總結(jié) 27致謝 27參考文件 28第1章緒論1.1選題背景伴隨Internet網(wǎng)正在向全世界各大洲延伸和擴(kuò)散,Internet是一個國際性通信網(wǎng)絡(luò)集合體,它集現(xiàn)代通信技術(shù)和現(xiàn)代計算機(jī)技術(shù)于一體,是計算機(jī)之間進(jìn)行國際信息交流和實(shí)現(xiàn)資源共享良好手段。Internet也是人類歷史發(fā)展中一個偉大里程碑,它是未來信息高速公路雛形,人類正由此進(jìn)入一個前所未有信息化社會。大家用多種名稱來稱呼Internet,如國際互聯(lián)網(wǎng)絡(luò)、因特網(wǎng)、交互網(wǎng)絡(luò)、網(wǎng)際網(wǎng)等等,已經(jīng)成為世界上覆蓋面最廣、規(guī)模最大、信息資源最豐富計算機(jī)信息網(wǎng)絡(luò)。音樂網(wǎng)站現(xiàn)在最常見音樂發(fā)燒友網(wǎng)站行業(yè)展現(xiàn)出旺盛生命力和巨大市場潛力。音樂網(wǎng)站信息系統(tǒng)采取了B/S開發(fā)框架,優(yōu)異管理構(gòu)思,完善業(yè)務(wù)管理功效,整個產(chǎn)品在管理功效、易用性、實(shí)用性、數(shù)據(jù)容量、數(shù)據(jù)安全性、網(wǎng)絡(luò)穩(wěn)定性方面全部有了很大提升1.2編寫目標(biāo)研究網(wǎng)站開發(fā)技術(shù),關(guān)鍵是IIS,HTML,ASP.Net。開發(fā)一個音樂欣賞網(wǎng)站。該網(wǎng)站使用SQLServer保留數(shù)據(jù),用ASP.Net設(shè)計動態(tài)網(wǎng)頁。1.3編寫意義計算機(jī)和計算機(jī)網(wǎng)絡(luò)飛速發(fā)展,大家對計算機(jī)網(wǎng)絡(luò)依靠是越來越大。大家在網(wǎng)上聊天交友,在網(wǎng)上請教問題,查閱資料,還在網(wǎng)上玩游戲。除此之外,大家還會在網(wǎng)上進(jìn)行商務(wù)交易、下載信息,有著眾多使用者。而我想設(shè)計一個全新音樂綜合網(wǎng)站,這個網(wǎng)站有別于其它音樂網(wǎng)站常規(guī)設(shè)計,將給人一個全新感覺,使之瀏覽,搜索音樂愈加方便和快捷。這也就是畢業(yè)設(shè)計編寫意義。第2章需求分析2.1功效需求描述音樂專輯,音樂動向,音樂小說,音樂留言。音樂專輯:是本網(wǎng)站功效最強(qiáng)網(wǎng)頁。介紹了音樂專輯。專輯是按專輯類別分頁,點(diǎn)擊某個人專輯,連接到具體專輯頁面。音樂動向:按歌手分類,顯示歌手最新動向。如最近行期安排。音樂小說:按歌手分類,顯示歌手個人介紹。如身高,家人等信息。音樂留言:給本網(wǎng)站留言。能夠是對網(wǎng)站評價,意見等您想說話。專輯增加和維護(hù),歌曲類別增加和維護(hù),歌曲增加和維護(hù),音樂動向增加和維護(hù),音樂小說增加和維護(hù),留言版維護(hù)。2.2可行性分析技術(shù)可行性:使用ASP.NET,SQLServer,合理設(shè)計技術(shù)方案,并和其它音樂網(wǎng)站進(jìn)行比選和評價。經(jīng)濟(jì)可行性:本網(wǎng)站可進(jìn)行網(wǎng)上銷售,賣家能夠購置唱片,圖片等和音樂相關(guān)商品。有效配置經(jīng)濟(jì)資源、增加供給、發(fā)明就業(yè)、改善環(huán)境、提升人民生活等方面效益。社會可行性:本網(wǎng)站對社會完全沒有不良影響。2.3統(tǒng)性能需求描述開發(fā)環(huán)境:ASP.NET,SQLServer運(yùn)行環(huán)境:ASP.NET軟件硬件配置要求:MicrosoftWindowsXPHomeEditionAMDTurion(tm)64*21.81GHz,960MBNVIDIAGeForceGo6150第3章總體設(shè)計3.1功效框圖3.1.1功效框圖這是本網(wǎng)站總體功效框圖。網(wǎng)站名稱是《最愛音樂網(wǎng)》,它能夠分為六大塊功效,分別為:注冊、登錄、音樂專輯、音樂動向、音樂小說、音樂留言。
3.1.2注冊功效說明圖3-1注冊功效是新用戶注冊。注冊用戶名時需要調(diào)用兩次校驗一次是用戶端非空驗證,還有一次是服務(wù)器端用戶名是否存在數(shù)據(jù)庫檢索。注冊成功時自動跳轉(zhuǎn)到登錄界面。3.1.3.登錄功效說明圖3-2登錄功效是登錄。在用戶名和密碼全部正確情況下能夠登錄。一個是一般用戶登錄:進(jìn)入主界面,能夠瀏覽本網(wǎng)站。另一個是管理員登錄:進(jìn)入網(wǎng)站維護(hù)界面,能夠?qū)W(wǎng)站進(jìn)行維護(hù)。3.1.4音樂專輯功效說明圖3-3音樂專輯功效是瀏覽音樂專輯。一般用戶進(jìn)入后能夠依據(jù)專輯類別瀏覽專輯列表。專輯類別分為流行歌曲、日韓歌曲、歐美歌曲、兒童歌曲等。點(diǎn)擊專輯列表能夠進(jìn)入這個專輯具體信息。具體信息包含專輯名稱、歌手名稱、發(fā)行日期、專輯介紹專輯歌曲列表等信息。點(diǎn)擊歌曲能夠無償下載歌曲。本網(wǎng)站共搜集上百種專輯供用戶隨意瀏覽和下載。3.1.5音樂動向功效說明圖3-4音樂動向功效是瀏覽音樂動向。動向列表是按歌手排列。點(diǎn)擊進(jìn)入歌手最新動向,最新動向包含歌手最新行程安排等信息。3.1.6音樂小說功效說明圖3-5音樂小說功效是瀏覽音樂小說。小說列表是按歌手排列。點(diǎn)擊進(jìn)入歌手個人小說,個人小說包含歌手個人介紹和小說。個人介紹:出生地、生日、身高等信息。小說:個人經(jīng)歷、專輯、唱片介紹等信息。3.1.7音樂留言功效說明圖3-6音樂留言功效是發(fā)表留言。一般用戶進(jìn)入音樂留言界面后能夠隨意對本網(wǎng)站進(jìn)行留言。留言能夠是對本網(wǎng)站提議、評論,還能夠是對自己喜愛歌手,專輯發(fā)表評論等。3.2數(shù)據(jù)字典表3—1歌曲表表名Music用途用于輸入音樂具體信息漢字字段名英文字段名類型長度備注歌曲編號M_Id數(shù)值主鍵歌曲名稱M_Name字符10歌曲歌手編號M_SingerId數(shù)值歌曲歌手名稱M_SingerName字符10歌曲類型編號M_ClassId數(shù)值歌曲類型名稱M_ClassName字符10歌曲專輯編號M_AlbumId數(shù)值歌曲專輯名稱M_AlbumName字符10
表3—2專輯表表名Album用途用于輸入專輯具體信息漢字字段名英文字段名類型長度備注專輯編號A_Id數(shù)值主鍵專輯名稱A_Name字符20專輯歌手編號A_SingerId數(shù)值專輯歌手名稱A_SingerName字符10專輯類型編號A_ClassId數(shù)值專輯類型名稱A_ClassName字符10發(fā)行日期A_Date日期發(fā)行企業(yè)A_Company字符20專輯語言A_Language字符10專輯介紹A_Intro字符1000專輯圖片A_Pic字符50表3—3音樂動向表表名音樂動向用途用于輸入音樂動向具體信息漢字字段名英文字段名類型長度備注動向編號P_Id數(shù)值主鍵動向圖片P_Pic字符50音樂動向P_Pulse字符1000動向名稱P_Name字符50
表3—4音樂小說表表名音樂小說用途用于輸入音樂小說具體信息漢字字段名英文字段名類型長度備注小說編號S_Id數(shù)值主鍵小說圖片S_Pic字符50音樂小說S_Pulse字符1000小說名稱S_Name字符50小說介紹S_Intro字符500表3—5歌曲類別表表名歌曲類別用途用于輸入歌曲類別具體信息漢字字段名英文字段名類型長度備注類別編號ClassId數(shù)值主鍵類別名稱ClassName字符10表3—6留言表表名留言表用途用于輸入留言具體信息漢字字段名英文字段名類型長度備注時間M_Time字符100主鍵標(biāo)題M_Title字符100名稱M_Name字符100留言M_News字符1000
表3—7注冊表表名注冊用途用于輸入注冊具體信息漢字字段名英文字段名類型長度備注用戶編號UserID十進(jìn)制10主鍵用戶名UserName字符30密碼UserPwd字符20郵箱Email字符50性別UserSex字符2生日Birthday字符20身份證IdentityCard字符18自我介紹ZiWoJieShao字符100用戶類別Type字符10
第4章頁面設(shè)計4.1最愛音樂網(wǎng)前臺設(shè)計圖4—1音樂專輯界面圖4—2音樂專輯界面圖4—3登錄界面4.2最愛音樂網(wǎng)后臺設(shè)計圖4—4維護(hù)界面圖4—5專輯維護(hù)界面
第5章編碼實(shí)現(xiàn)本網(wǎng)站在模式上采取B/S,語言利用(C#),利用數(shù)據(jù)庫(SQLServer),在技術(shù)上以ASP.NET為主導(dǎo),充足利用在學(xué)校所學(xué)各方面知識。5.1B/S模式B/S是Brower/Server縮寫,用戶機(jī)上只要安裝一個瀏覽器(Browser),如NetscapeNavigator或InternetExplorer,服務(wù)器安裝Oracle、Sybase、Informix或SQLServer等數(shù)據(jù)庫。瀏覽器經(jīng)過WebServer同數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互。(1)B/S模式是一個三層結(jié)構(gòu)系統(tǒng)。第一層用戶機(jī)是用戶和整個系統(tǒng)接口。用戶應(yīng)用程序精簡到一個通用瀏覽器軟件,如NetscapeNavigator,微軟企業(yè)IE等。瀏覽器將HTML代碼轉(zhuǎn)化成圖文并茂網(wǎng)頁。網(wǎng)頁還含有一定交互功效,許可用戶在網(wǎng)頁提供申請表上輸入信息提交給后臺,并提出處理請求。這個后臺就是第二層Web服務(wù)器。第二層Web服務(wù)器將開啟對應(yīng)進(jìn)程來響應(yīng)這一請求,并動態(tài)生成一串HTML代碼,其中嵌入處理結(jié)果,返回給用戶機(jī)瀏覽器。假如用戶機(jī)提交請求包含數(shù)據(jù)存取,Web服務(wù)器還需和數(shù)據(jù)庫服務(wù)器協(xié)同完成這一處理工作。第三層數(shù)據(jù)庫服務(wù)器任務(wù)類似于C/S模式,負(fù)責(zé)協(xié)調(diào)不一樣Web服務(wù)器發(fā)出SQ請求,管理數(shù)據(jù)庫。(2)B/S最大優(yōu)點(diǎn)就是能夠在任何地方進(jìn)行操作而不用安裝任何專門軟件。只要有一臺能上網(wǎng)電腦就能使用,用戶端零維護(hù)。系統(tǒng)擴(kuò)展很輕易,只要能上網(wǎng),再由系統(tǒng)管理員分配一個用戶名和密碼,就能夠使用了。甚至能夠在線申請,經(jīng)過企業(yè)內(nèi)部安全認(rèn)證(如CA證書)后,不需要人參與,系統(tǒng)能夠自動分配給用戶一個賬號進(jìn)入系統(tǒng)。5.2C#語言C#是Microsoft在推出.NETFramework第1版時提供一個全新語言。它是為生成運(yùn)行在.NETFramework上、廣泛企業(yè)級應(yīng)用程序而設(shè)計。C#從MicrosoftC和MicrosoftC++演變而來,它是一個簡單、現(xiàn)代、類型安全和面向?qū)ο笳Z言。C#代碼被作為托管代碼編譯,這意味著它能夠從公共語言運(yùn)行庫服務(wù)中受益。這些服務(wù)包含:語言互操作性、垃圾回收、增強(qiáng)安全性和改善版本支持。C#快速流行,使之成為使用.NETWindows和Web開發(fā)人員無可爭議語言選擇。她們喜愛C#一個原因是其派生于C/C++簡練語法,這種語法簡化了以前困擾部分程序員問題。盡管做了這些簡化,但C#仍保持了C++原來功效,所以現(xiàn)在沒有理由不從C++轉(zhuǎn)向C#。這種語言并不難,也很適合于學(xué)習(xí)基礎(chǔ)編程技術(shù)。易于學(xué)習(xí)、再加上.NETFramework功效,是使C#成為開始您編程生涯絕佳方法。C#最新版本是.NET2.0一部分,它建立在已經(jīng)有成功基礎(chǔ)之上,還添加了部分更吸引人功效。其中部分功效取自于C++(最少從表面上看是這么),而另外部分功效是全新。VisualStudio最新版本也有很多改變和改善,這大大簡化了編程,顯著提升了效率。本書將全方面介紹C#編程全部知識,從該語言本身一直到Windows和Web編程,再到數(shù)據(jù)源使用,最終是部分高級技術(shù),例圖形編程。5.3SQLServer數(shù)據(jù)庫SQLServer是一個可擴(kuò)展、高性能、為分布式用戶機(jī)/服務(wù)器計算所設(shè)計數(shù)據(jù)庫管理系統(tǒng),實(shí)現(xiàn)了和WindowsNT有機(jī)結(jié)合,提供了基于事務(wù)企業(yè)級信息管理系統(tǒng)方案。SQL(STructuredQueryLanguage)是一個資料庫查詢和程式設(shè)計語言,用于存取資料和查詢、更新和管理關(guān)聯(lián)式資料庫系統(tǒng)。美國國家標(biāo)準(zhǔn)局(ANSI)和國際標(biāo)準(zhǔn)化組織(ISO)已經(jīng)制訂了SQL標(biāo)準(zhǔn)。ANSI是一個美國工業(yè)和商業(yè)集團(tuán)組織,發(fā)展美國商務(wù)和通訊標(biāo)準(zhǔn)。ANSI同時也是ISO和InternationalElectrotechnicalCommission(IEC)組員之一。ANSI公布和國際標(biāo)準(zhǔn)組織對應(yīng)美國家標(biāo)準(zhǔn)準(zhǔn)。1992年,ISO和IEC公布了SQL國際標(biāo)準(zhǔn),稱為SQL-92ANSI隨之公布對應(yīng)標(biāo)準(zhǔn)是ANSISQL-92。ANSISQL-92有時被稱為ANSISQL。盡管不一樣關(guān)聯(lián)式資料庫使用SQL版本有部分差異,但大多數(shù)全部遵照ANSISQL標(biāo)準(zhǔn)。SQLServer使用ANSISQL-92擴(kuò)展集,稱為T-SQL,其遵照ANSI制訂SQL-92標(biāo)準(zhǔn)。MicrosoftSQLServer是一個高性能用戶端/服務(wù)器結(jié)構(gòu)關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS,RelationalDatabaseManagementSystem).SQLServer是為支持高容量事務(wù)處理(比如在線訂購錄入、存貨目錄、記帳或制造)和數(shù)據(jù)倉庫和決議支持系統(tǒng)(比如銷售分析應(yīng)用)而設(shè)計。SQLServer以其內(nèi)置數(shù)據(jù)復(fù)制功效、強(qiáng)大管理工具、和Internet緊密集成和開放系統(tǒng)結(jié)構(gòu)為廣大用戶、開發(fā)人員和系統(tǒng)集成商提供了一個出色數(shù)據(jù)庫平臺。經(jīng)過新數(shù)據(jù)庫鏡像方法,將統(tǒng)計檔案傳送性能進(jìn)行延伸。您將能夠使用數(shù)據(jù)庫鏡像,經(jīng)過將自動失效轉(zhuǎn)移建立到一個待用服務(wù)器上,增強(qiáng)您SQL服務(wù)器系統(tǒng)可用性。5.4ASP.NET技術(shù)A是建立在通用語言運(yùn)行時刻庫(CLR)上應(yīng)用程序框架。它提供了一個生產(chǎn)率高且基于標(biāo)準(zhǔn)多語言環(huán)境,用于將現(xiàn)有投資和下一代應(yīng)用程序和服務(wù)集成,同時提供了處理Internet規(guī)模應(yīng)用程序布署和操作難題靈活性。她用來在服務(wù)器端構(gòu)建功效強(qiáng)大web應(yīng)用程序。ASP.net不僅僅是ActiveServerPage(ASP)下一個版本,而且是一個建立在通用語言上程序構(gòu)架,能被用于一臺Web服務(wù)器來建立強(qiáng)大Web應(yīng)用程序。ASP.net提供很多比現(xiàn)在Web開發(fā)模式強(qiáng)大優(yōu)勢。實(shí)施效率大幅提升ASP.net是把基于通用語言程序在服務(wù)器上運(yùn)行。不像以前ASP即時解釋程序,而是將程序在服務(wù)器端首次運(yùn)行時進(jìn)行編譯,這么實(shí)施效果,當(dāng)然比一條一條解釋強(qiáng)很多。世界級工具支持ASP.net構(gòu)架是能夠用Microsoft(R)企業(yè)最新產(chǎn)品VisualS開發(fā)環(huán)境進(jìn)行開發(fā),WYSIWYG(WhatYouSeeIsWhatYouGet所見即為所得)編輯。這些僅是ASP.net強(qiáng)大化軟件支持一小部分。強(qiáng)大性和適應(yīng)性因為ASP.net是基于通用語言編譯運(yùn)行程序,所以它強(qiáng)大性和適應(yīng)性,能夠使它運(yùn)行在Web應(yīng)用軟件開發(fā)者幾乎全部平臺上(筆者到現(xiàn)在為止只知道它只能用在WindowsServer上)。通用語言基礎(chǔ)庫,消息機(jī)制,數(shù)據(jù)接口處理全部能無縫整合到ASP.netWeb應(yīng)用中。ASP.net同時也是language-independent語言獨(dú)立化,所以,你能夠選擇一個最適合你語言來編寫你程序,或把你程序用很多個語言來寫,現(xiàn)在已經(jīng)支持有C#(C++和Java結(jié)合體),VB,Jscript。未來,這么多個程序語言協(xié)同工作能力保護(hù)您現(xiàn)在基于COM+開發(fā)程序,能夠完整移植向ASP.net5.5功效實(shí)現(xiàn)5.5.1登錄步驟圖
5.5.2登錄代碼實(shí)現(xiàn)/********************************************************************開發(fā)人:于炳煜**開發(fā)時間:1014-12-12**模塊名稱:登錄頁面**功效簡述:輸入正確用戶名密碼時即可進(jìn)入主頁面*********************************************************/protectedvoidButton1_Click(objectsender,EventArgse){SqlCommandcmd=newSqlCommand("select*fromRegisterwhereUserName='"+TextBox1.Text+"'andUserPwd='"+TextBox2.Text+"'",clsCon.DBOpen());SqlDataReaderdt=cmd.ExecuteReader();stringtype="";if(dt.Read()){type=Convert.ToString(dt.GetValue(8));}dt.Close();clsCon.DBClose();if(type=="1"){Response.Redirect("Manager.aspx");}SqlCommandcmd1=newSqlCommand("selectcount(*)fromRegisterwhereUserName='"+TextBox1.Text+"'andUserPwd='"+TextBox2.Text+"'",clsCon.DBOpen());inti=(int)cmd1.ExecuteScalar();if(i>0){Session["Name"]=TextBox1.Text;Response.Redirect("Main.aspx");}else{Response.Write("<scriptlanuage=javascript>alert('用戶名或密碼錯誤');location='javascript:history.go(-1)'</script>");}clsCon.DBClose();}
5.5.3注冊步驟圖5.5.4注冊代碼實(shí)現(xiàn)/********************************************************************開發(fā)人:于炳煜**開發(fā)時間:1014-12-12**模塊名稱:注冊頁面**功效簡述:注冊成功后即可進(jìn)入登錄界面*********************************************************/protectedvoidButton1_Click(objectsender,EventArgse){if(Page.IsValid){try{SqlConnectioncon=newSqlConnection(ConfigurationManager.ConnectionStrings["GraduateConnectionString"].ConnectionString);con.Open();stringsex="男";if(RadioButton3.Checked==true){sex="女";}SqlCommandcmd=newSqlCommand("insertintoregistervalues('"+TextBox1.Text.Trim()+"','"+TextBox3.Text.Trim()+"','"+TextBox4.Text.Trim()+"','"+sex+"','"+TextBox7.Text.Trim()+"','"+TextBox5.Text.Trim()+"','"+TextBox6.Text.Trim()+"','"+""+"')",clsCon.DBOpen());cmd.ExecuteNonQuery();clsCon.DBClose();Response.Redirect("CG.aspx");}catch(Exceptionee){Response.Write("<scriptlanguage='JavaScript'>");Response.Write("alert('提交失敗!')");Response.Write("</cript>");}}}protectedvoidCustomValidator1_ServerValidate(objectsource,ServerValidateEventArgsargs){SqlCommandcmd1=newSqlCommand("selectcount(*)fromRegisterwhereUserName='"+TextBox1.Text+"'",clsCon.DBOpen());inti=(int)cmd1.ExecuteScalar();if(i>0){args.IsValid=false;}else{args.IsValid=true;}}
.6歌曲下載代碼實(shí)現(xiàn)/********************************************************************開發(fā)人:于炳煜**開發(fā)時間:1014-12-12**模塊名稱:下載頁面**功效簡述:當(dāng)點(diǎn)擊下載歌曲時即可下載歌曲*********************************************************/protectedvoidGridView1_SelectedIndexChanged(objectsender,EventArgse){if(GridView1.SelectedIndex!=-1){stringM_Id=GridView1.DataKeys[GridView1.SelectedIndex].Value.ToString();stringM_FileName="";if(M_Id!=""){SqlConnectioncon=newSqlConnection();con.ConnectionString=ConfigurationManager.ConnectionStrings["graduateConnectionString"].ConnectionString;con.Open();SqlCommandcmd=newSqlCommand("selectM_LuJingfromMusicwhereM_id='"+M_Id+"'",con);M_FileName=cmd.ExecuteScalar().ToString();con.Close();}if(M_FileName!=""){Response.TransmitFile(Server.MapPath("Music")+"\\"+M_FileName);stringFileName=M_FileName;stringfilePath=Server.MapPath("Music")+"\\"+M_FileName;if(System.IO.File.Exists(filePath)==false){return;}FileName=newFileInfo(filePath).Name;HttpContext.Current.Response.Clear();HttpContext.Current.Response.AddHeader("Content-Disposition","attachment;filename="+FileName);HttpContext.Current.Response.WriteFile(filePath);HttpContext.Current.Response.End();}}
第6章軟件布署及測試分析6.1軟件配置提議服務(wù)器操作系統(tǒng)為:WindowsServer數(shù)據(jù)庫為:MicrosoftSQLServer工作站:全部Windows平臺。比如:WindowsXP6.2測試分析6.2.1單元測試單元測試(模塊測試)是開發(fā)者編寫一小段代碼,用于檢驗被測代碼一個很小、很明確功效是否正確。通常而言,一個單元測試是用于判定某個特定條件(或場景)下某個特定函數(shù)行為。比如,你可能把一個很大值放入一個有序list中去,然后確定該值出現(xiàn)在list尾部?;颍憧赡軙淖址袆h除匹配某種模式字符,然后確定字符串確實(shí)不再包含這些字符了。單元測試(模塊測試)是由程序員自己來完成,最終受益也是程序員自己。能夠這么說,程序員有責(zé)任編寫功效代碼,同時也就有責(zé)任為自己代碼編寫單元測試。實(shí)施單元測試,就是為了證實(shí)這段代碼行為和我們期望一致。工廠在組裝一臺電視機(jī)之前,會對每個元件全部進(jìn)行測試,這,就是單元測試。單元測試優(yōu)點(diǎn):1、它是一個驗證行為。程序中每一項功效全部是測試來驗證它正確性。它為以后開發(fā)提供支緩。就算是開發(fā)后期,我們也能夠輕松增加功效或更改程序結(jié)構(gòu),而不用擔(dān)心這個過程中會破壞關(guān)鍵東西。而且它為代碼重構(gòu)提供了保障。這么,我們就能夠更自由對程序進(jìn)行改善。2、它是一個設(shè)計行為。編寫單元測試將使我們從調(diào)用者觀察、思索。尤其是先寫測試(test-first),迫使我們把程序設(shè)計成易于調(diào)用和可測試,即迫使我們解除軟件中耦合。3、它是一個編寫文檔行為。單元測試是一個無價文檔,它是展示函數(shù)或類怎樣使用最好文檔。這份文檔是可編譯、可運(yùn)行,而且它保持最新,永遠(yuǎn)和代碼同時。4、它含有回歸性。自動化單元測試避免了代碼出現(xiàn)回歸,編寫完成以后,能夠隨時隨地快速運(yùn)行測試。6.2.2黑盒測試黑盒測試也稱功效測試或數(shù)據(jù)驅(qū)動測試,它是在已知產(chǎn)品所應(yīng)含有功效,經(jīng)過測試來檢測每個功效是否全部能正常使用,在測試時,把程序看作一個不能打開黑盆子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特征情況下,測試者在程序接口進(jìn)行測試,它只檢驗程序功效是否根據(jù)需求規(guī)格說明書要求正常使用,程序是否能合適地接收輸入數(shù)鋸而產(chǎn)生正確輸出信息,而且保持外部信息(如數(shù)據(jù)庫或文件)完整性。黑盒測試方法關(guān)鍵有等價類劃分、邊值分析、因—果圖、錯誤推測等,關(guān)鍵用于軟件確定測試?!昂诤小狈ㄖ塾诔绦蛲獠拷Y(jié)構(gòu)、不考慮內(nèi)部邏輯結(jié)構(gòu)、針對軟件界面和軟件功效進(jìn)行測試?!昂诤小狈ㄊ歉F舉輸入測試,只有把全部可能輸入全部作為測試情況使用,才能以這種方法查出程序中全部錯誤。實(shí)際上測試情況有沒有窮多個,大家不僅要測試全部正當(dāng)輸入,而且還要對那些不正當(dāng)不過可能輸入進(jìn)行測試。6.2.3白盒測試白盒測試也稱結(jié)構(gòu)測試或邏輯驅(qū)動測試,它是知道產(chǎn)品內(nèi)部工作過程,可經(jīng)過測試來檢測產(chǎn)品內(nèi)部動作是否根據(jù)規(guī)格說明書要求正常進(jìn)行,根據(jù)程序內(nèi)部結(jié)構(gòu)測試程序,檢驗程序中每條通路是否全部有能按預(yù)定要求正確工作,而不顧它功效,白盒測試關(guān)鍵方法有邏輯驅(qū)動、基路測試等,關(guān)鍵用于軟件驗證?!鞍缀小狈ㄈ矫媪私獬绦騼?nèi)部邏輯結(jié)構(gòu)、對全部邏輯路徑進(jìn)行測試?!鞍缀小狈ㄊ歉F舉路徑測試。在使用這一方案時,測試者必需檢驗程序內(nèi)部結(jié)構(gòu),從檢驗程序邏輯著手,得出測試數(shù)據(jù)。貫穿程序獨(dú)立路徑數(shù)是天文數(shù)字。但即使每條路徑全部測試了仍然可能有錯誤。第一,窮舉路徑測試決不能查出程序違反了設(shè)計規(guī)范,即程序本身是個錯誤程序。第二,窮舉路徑測試不可能查出程序中因遺漏路徑而犯錯。第三,窮舉路徑測試可能發(fā)覺不了部分和數(shù)據(jù)相關(guān)錯誤。6.2.4集成測試集成測試(也叫組裝測試,聯(lián)合測試)是單元測試邏輯擴(kuò)展。它最簡單形式是:兩個已經(jīng)測試過單元組合成一個組件,而且測試它們之間接口。從這一層意義上講,組件是指多個單元集成聚合。在現(xiàn)實(shí)方案中,很多單元組合成組件,而這些組件又聚合成程序更大部分。方法是測試片段組合,并最終擴(kuò)展進(jìn)程,將您模塊和其它組模塊一起測試。最終,將組成進(jìn)程全部模塊一起測試。另外,假如程序由多個進(jìn)程組成,應(yīng)該成對測試它們,而不是同時測試全部進(jìn)程。集成測試識別組合單元時出現(xiàn)問題。經(jīng)過使用要求在組合單元前測試每個單元并確保每個單元生存能力測試計劃,能夠知道在組合單元時所發(fā)覺任何錯誤很可能和單元之間接口相關(guān)。這種方法將可能發(fā)生情況數(shù)量降低到更簡單分析等級。集成測試是在單元測試基礎(chǔ)上,測試在將全部軟件單元根據(jù)概要設(shè)計規(guī)格說明要求組裝成模塊、子系統(tǒng)或系統(tǒng)過程中各部分工作是否達(dá)成或?qū)崿F(xiàn)對應(yīng)技術(shù)指標(biāo)及要求活動。也就是說,在集成測試之前,單元測試應(yīng)該已經(jīng)完成,集成測試中所使用對象應(yīng)該是已經(jīng)經(jīng)過單元測試軟件單元。這一點(diǎn)很關(guān)鍵,因為假如不經(jīng)過單元測試,那么集成測試效果將會受到很大影響,而且會大幅增加軟件單元代碼糾錯代價。集成測試是單元測試邏輯擴(kuò)展。在現(xiàn)實(shí)方案中,集成是指多個單元聚合,很多
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 淺談我國精密儀器與裝備的現(xiàn)狀和發(fā)展
- 腸道微生態(tài)行業(yè)發(fā)展趨勢
- 石河子大學(xué)《醫(yī)藥數(shù)理統(tǒng)計》2022-2023學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《試驗設(shè)計與數(shù)據(jù)分析》2023-2024學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《解析幾何》2021-2022學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《健康評估》2022-2023學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《阿拉伯國家歷史與文化常識》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《室外空間設(shè)計方法》2022-2023學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《矩陣分析》2021-2022學(xué)年第一學(xué)期期末試卷
- 父親的病閱讀題
- 珠寶銷貨登記表Excel模板
- 深基坑開挖施工風(fēng)險源辨識與評價及應(yīng)對措施
- 唯美手繪風(fēng)花藝插花基礎(chǔ)培訓(xùn)PPT模板課件
- 《現(xiàn)代漢語語法》PPT課件(完整版)
- 5G智慧農(nóng)業(yè)建設(shè)方案
- 航海學(xué)天文定位第四篇天文航海第1、2章
- 浙江大學(xué)學(xué)生社團(tuán)手冊(08)
- 水利水電工程專業(yè)畢業(yè)設(shè)計(共98頁)
- 公司內(nèi)部審批權(quán)限一覽表
- 人教版統(tǒng)編高中語文“文學(xué)閱讀與寫作”學(xué)習(xí)任務(wù)群編寫簡介
- 六年級語文命題比賽一等獎作品
評論
0/150
提交評論