37060213_王燁_面向?qū)ο笳撐腳第1頁(yè)
37060213_王燁_面向?qū)ο笳撐腳第2頁(yè)
37060213_王燁_面向?qū)ο笳撐腳第3頁(yè)
37060213_王燁_面向?qū)ο笳撐腳第4頁(yè)
37060213_王燁_面向?qū)ο笳撐腳第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、院 系 6系 學(xué) 號(hào) 37060213分類(lèi)號(hào) 面向?qū)ο筌浖y(cè)試技術(shù)理論的學(xué)習(xí)研究 院(系)名稱(chēng)計(jì)算機(jī)科學(xué)與技術(shù) 專(zhuān)業(yè)名稱(chēng)計(jì)算機(jī)科學(xué)與技術(shù) 學(xué)生姓名王燁 指導(dǎo)教師劉超 2009 年 3 月 目 錄中文摘要3英文摘要3概述3正文41 面向?qū)ο蟮幕靖拍?1.1 對(duì)象41.2 消息41.3 類(lèi)51.4 繼承51.5封裝51.6 多態(tài)62 面向?qū)ο筌浖奶攸c(diǎn)對(duì)測(cè)試的影響62.1 信息隱蔽和封裝性62.2 繼承性72.3 多態(tài)性和動(dòng)態(tài)邦定73 面向?qū)ο蟮臏y(cè)試與傳統(tǒng)測(cè)試的比較74 面向?qū)ο筌浖y(cè)試的層次劃分及內(nèi)容84.1 類(lèi)測(cè)試84.2 方法測(cè)試84.3 類(lèi)簇測(cè)試(集成測(cè)試)94.4 系統(tǒng)測(cè)試9總結(jié)9參考

2、文獻(xiàn)9面向?qū)ο筌浖y(cè)試技術(shù)理論的學(xué)習(xí)研究中文摘要由于面向?qū)ο缶幊陶Z(yǔ)言的發(fā)展,面向?qū)ο蟮能浖辉O(shè)計(jì)成一系列的對(duì)象及其之間通過(guò)消息的相互作用,這些對(duì)象從根本上形成了問(wèn)題的模型,并由這些對(duì)象共同作用于一個(gè)解決方案。面向?qū)ο蟮某绦蛟O(shè)計(jì)又提供了信息隱蔽、繼承、多態(tài)和動(dòng)態(tài)綁定等機(jī)制。這種軟件開(kāi)發(fā)方法固有的特性,給軟件測(cè)試?yán)碚?、技術(shù)、方法等方面帶來(lái)了巨大的影響,而對(duì)象之間操作的復(fù)雜性與對(duì)象本身的封裝與多念使面向?qū)ο筌浖臏y(cè)試工作面臨著巨大的挑戰(zhàn)。英文摘要In order to facing to the development of the object plait distance language, f

3、ace to the software of object to be design a series of object and it passes the interaction of news, these objects by the root became the model of problem, and from these object common function are at a solution.The program design which faces to object provided an information again concealment, inhe

4、rit, many Tais and dynamic state bind settle etc. mechanism.This kind of method inherent property of the software development, give software test the theories, technique, method.etc. brought huge influence, but the of object operate of the seal of complexity and object pack and much read aloud to ma

5、ke the test work of face to the object software face a huge challenge.概述面向?qū)ο笫钱?dāng)前計(jì)算機(jī)界關(guān)心的重點(diǎn),它是90年代軟件開(kāi)發(fā)方法的主流。面向?qū)ο蟮母拍詈蛻?yīng)用已超越了程序設(shè)計(jì)和軟件開(kāi)發(fā),擴(kuò)展到很寬的范圍。如數(shù)據(jù)庫(kù)系統(tǒng)、交互式界面、應(yīng)用結(jié)構(gòu)、應(yīng)用平臺(tái)、分布式系統(tǒng)、網(wǎng)絡(luò)管理結(jié)構(gòu)、CAD技術(shù)、人工智能等領(lǐng)域。通過(guò)對(duì)面向?qū)ο筌浖y(cè)試技術(shù)理論的學(xué)習(xí)研究,對(duì)面向?qū)ο蟮幕靖拍钣辛吮容^深入的理解與體會(huì),對(duì)于今后的面向?qū)ο笳Z(yǔ)言的學(xué)習(xí),軟件的編寫(xiě)和測(cè)試等技術(shù)的掌握奠定了基礎(chǔ)。正文1 面向?qū)ο蟮幕靖拍蠲嫦驅(qū)ο笳Z(yǔ)言更接近人的思維,面向?qū)ο蟪绦?/p>

6、的主要結(jié)構(gòu)特點(diǎn)是:第一,程序一般有類(lèi)的定義和類(lèi)的使用兩部分組成,在主程序中定義各個(gè)對(duì)象并規(guī)定它們之間傳遞消息的規(guī)律;第二,程序中的一切操作都是通過(guò)面向?qū)ο蟀l(fā)送消息來(lái)實(shí)現(xiàn)的,對(duì)象接收到消息后,啟動(dòng)有關(guān)方法去完成相應(yīng)的操作”。下面就是一些有關(guān)面向?qū)ο笳Z(yǔ)言的對(duì)象、狀態(tài)、消息、類(lèi)、以及面向?qū)ο笳Z(yǔ)言的三個(gè)重要的特征,繼承、封裝和多態(tài)。1.1 對(duì)象對(duì)象由保存對(duì)象屬性的數(shù)據(jù)和可以施加于這些數(shù)據(jù)的操作封裝在一起構(gòu)成的整體。對(duì)象是類(lèi)的實(shí)例,對(duì)象給類(lèi)以生命,類(lèi)想要做的事情必須通過(guò)建立對(duì)象和在對(duì)象仁進(jìn)行操作而實(shí)現(xiàn)。1.2 消息消息是對(duì)象的操作將要執(zhí)行的一種請(qǐng)求,是一個(gè)對(duì)象要求另外一個(gè)對(duì)象執(zhí)行某個(gè)功能操作的規(guī)格況明,

7、通過(guò)消息傳遞。能完成對(duì)象之問(wèn)的相互請(qǐng)求或相互協(xié)作。除了需要一個(gè)操作的名字,消息還可包含一些值(實(shí)參),它們常常在操作被執(zhí)行時(shí)使用。消息的接收者也可以將某個(gè)值返回給消息的發(fā)送者,消息傳遞使程序的控制流錯(cuò)綜復(fù)雜,不易于理解和把握,給測(cè)試帶來(lái)了一定的困難。1.3 類(lèi)類(lèi)是面向?qū)ο笾谢緲?gòu)造單元,是一組具有相同數(shù)據(jù)結(jié)構(gòu)和相同操作的對(duì)象的集合。類(lèi)的定義包括一組數(shù)據(jù)屬性和在數(shù)據(jù)上的一組合法操作,也就是方法。在面向?qū)ο蟮某绦蛑?,任何被描述的概念最初都必須被聲明為?lèi),然后創(chuàng)建由該類(lèi)定義的對(duì)象在一個(gè)類(lèi)中,每個(gè)對(duì)象都是類(lèi)的實(shí)例,它們都可使用類(lèi)中提供的函數(shù)。類(lèi)和對(duì)象之間的關(guān)系是抽象和具體的關(guān)系,類(lèi)是對(duì)多個(gè)對(duì)象進(jìn)行綜合

8、抽象的結(jié)果。1.4 繼承繼承是面向?qū)ο蟪绦蛟O(shè)計(jì)的一個(gè)重要特征,它允許在既有類(lèi)的基礎(chǔ)上創(chuàng)建新的類(lèi),新類(lèi)可以從一個(gè)或多個(gè)既有類(lèi)中繼承函數(shù)和數(shù)據(jù),而且可以重新定義或加進(jìn)新的數(shù)掘和函數(shù)導(dǎo)出類(lèi)或子類(lèi)。一個(gè)類(lèi)對(duì)另一個(gè)類(lèi)的依賴(lài),使得己有類(lèi)的說(shuō)明和實(shí)現(xiàn)可以被復(fù)用。1.5封裝封裝就是對(duì)象把一些屬性和方法封裝起來(lái),將私有元素和實(shí)現(xiàn)操作的內(nèi)部細(xì)節(jié)隱藏起來(lái),并能管理自己的內(nèi)部狀念。外部只能從對(duì)象所表示的具體概念、對(duì)象提供的服務(wù)和對(duì)象提供的外部接1:3來(lái)認(rèn)識(shí)對(duì)象。通過(guò)向?qū)ο蟀l(fā)送消息來(lái)激活對(duì)象的自身動(dòng)作,達(dá)到施加特定操作的目的。1.6 多態(tài)多態(tài)就是不同的對(duì)象收到相同的消息,產(chǎn)生不同的動(dòng)作。通俗的晚,就是一個(gè)名字定義不同的

9、函數(shù),這些函數(shù)執(zhí)行不同但又類(lèi)似的操作,即用同樣的接口訪問(wèn)功能不同的函數(shù),從而實(shí)現(xiàn)“一個(gè)接口,多種方法”。多態(tài)性可以分為靜念多念性和動(dòng)念多態(tài)性,在靜態(tài)多態(tài)性中,綁定是在編譯時(shí)進(jìn)行的,而動(dòng)態(tài)多態(tài)性用隱式運(yùn)行時(shí)的綁定和運(yùn)行時(shí)的類(lèi)型檢查代替了顯示的編譯時(shí)的綁定和靜態(tài)類(lèi)型。2 面向?qū)ο筌浖奶攸c(diǎn)對(duì)測(cè)試的影響面向?qū)ο蠹夹g(shù)是一種全新的軟件開(kāi)發(fā)技術(shù),正逐漸代替被廣泛使用的面向過(guò)程開(kāi)發(fā)方法,被看成是解決軟件危機(jī)的新興技術(shù)。面向?qū)ο蠹夹g(shù)產(chǎn)生更好的系統(tǒng)結(jié)構(gòu),更規(guī)范的編程風(fēng)格,極大的優(yōu)化了數(shù)據(jù)使用的安全性,提高了程序代碼的重用,其信息隱蔽和封裝性、繼承性、多態(tài)性和動(dòng)態(tài)綁定等特性,使軟件開(kāi)發(fā)更快、質(zhì)量更高,而且軟件易于

10、維護(hù)、易于修改,通過(guò)組裝可復(fù)用子系統(tǒng)而產(chǎn)生更大的系統(tǒng)”。然而他也給軟件測(cè)試帶來(lái)了更多的困難。由于面向?qū)ο蠹夹g(shù)丌發(fā)的軟件代碼重用率高,更需要嚴(yán)格測(cè)試,避免錯(cuò)誤的繁衍。因此,軟件測(cè)試并沒(méi)有面向?qū)ο缶幊痰呐d起而喪失掉它的重要性,而是對(duì)軟件測(cè)試提出了更嚴(yán)峻的考驗(yàn)。2.1 信息隱蔽和封裝性類(lèi)的重要特征之一是信息隱蔽,而信息隱蔽通過(guò)對(duì)象的封裝性實(shí)現(xiàn)。類(lèi)的封裝性將數(shù)據(jù)和數(shù)據(jù)的操作方法封裝在單個(gè)的類(lèi)當(dāng)中,內(nèi)部的屬性和操作一般申明為私有成員,外部的接口操作和屬性申明為公有成員,外界只能通過(guò)被提供的操作來(lái)訪問(wèn)或修改數(shù)據(jù),這樣降低了數(shù)據(jù)被任意修改和讀寫(xiě)的可能性,避免了傳統(tǒng)程序中對(duì)數(shù)據(jù)非法操作后錯(cuò)誤的擴(kuò)散。信息隱蔽與

11、封裝性限制了對(duì)象屬性對(duì)外界的可見(jiàn)性與外界對(duì)它的操作權(quán)限這樣就在一定程度上避免外界對(duì)它的不合理操作并防止錯(cuò)誤的擴(kuò)散。但這樣細(xì)節(jié)性的信息卻是軟件測(cè)試所不可忽略的。2.2 繼承性在面向?qū)ο蟪绦蛑?,使用繼承機(jī)制是實(shí)現(xiàn)共享和提高重用程度的主要途徑。繼承性是面向?qū)ο蟮幕咎攸c(diǎn)之一,是一種有效的程序復(fù)用方法。由于繼承的作用,一個(gè)函數(shù)可能被封裝在多個(gè)子類(lèi)中,子類(lèi)中還可以對(duì)繼承的特性進(jìn)行重定義。2.3 多態(tài)性和動(dòng)態(tài)邦定多態(tài)性和動(dòng)態(tài)綁定是面向?qū)ο蠓椒ǖ年P(guān)鍵性特征之一。多態(tài)是指同一消息可以根據(jù)發(fā)送消息對(duì)象的不同采用多種不同的行為方式, 重載就是多念的一種常見(jiàn)形式,它允許幾個(gè)函數(shù)有相同的名字,而所帶的參數(shù)類(lèi)型不同。如

12、根據(jù)當(dāng)前指針引用的對(duì)象類(lèi)型來(lái)決定使用正確的方法,這是多態(tài)性行為操作,運(yùn)行時(shí)系統(tǒng)能自動(dòng)為給定消息選擇合適的實(shí)現(xiàn)代碼,這給程序員提供了高度柔性、問(wèn)題抽象和易于維護(hù)。但多態(tài)性和動(dòng)態(tài)綁定所帶來(lái)的不確定性,使得傳統(tǒng)測(cè)試實(shí)踐中的靜態(tài)分析法遇到了不可逾越的障礙,而且它們也增加了系統(tǒng)運(yùn)行中可能的執(zhí)行路徑,加大了測(cè)試用例的選取難度和數(shù)量。這種不確定性和驟然增加的路徑組合給測(cè)試覆蓋率的滿(mǎn)足帶來(lái)了挑戰(zhàn)。3 面向?qū)ο蟮臏y(cè)試與傳統(tǒng)測(cè)試的比較首先,測(cè)試的起點(diǎn)和內(nèi)容有了新的變化。其次,測(cè)試的基本單元發(fā)生了改變,其測(cè)試內(nèi)容有了延伸。再次,軟件的系統(tǒng)構(gòu)成發(fā)生了變化。最后,適用的測(cè)試模型發(fā)生了改變。因此,傳統(tǒng)的測(cè)試模型對(duì)面向?qū)ο?/p>

13、軟件已經(jīng)不再適用。針對(duì)面向?qū)ο筌浖拈_(kāi)發(fā)特點(diǎn),需要一種新的測(cè)試模型。4 面向?qū)ο筌浖y(cè)試的層次劃分及內(nèi)容目前,對(duì)面向?qū)ο筌浖y(cè)試的層次劃分尚未達(dá)成共識(shí)。傳統(tǒng)層次測(cè)試基于功能模塊的層次結(jié)構(gòu),而在面向?qū)ο筌浖y(cè)試中,繼承和組裝關(guān)系刻畫(huà)了類(lèi)之問(wèn)的內(nèi)在層次,它們既是構(gòu)造系統(tǒng)結(jié)構(gòu)的基礎(chǔ),也是構(gòu)造測(cè)試結(jié)構(gòu)的基礎(chǔ)。面向?qū)ο蟪绦虻膱?zhí)行實(shí)際上是執(zhí)行一個(gè)由消息連接起來(lái)的方法序列,而這個(gè)方法序列通常是由外部事件驅(qū)動(dòng)的。面向?qū)ο筌浖y(cè)試的層次可劃分為:4.1 類(lèi)測(cè)試在面向?qū)ο笾袑?duì)于類(lèi)的測(cè)試在測(cè)試過(guò)程上,等同于傳統(tǒng)的單元測(cè)試”“。傳統(tǒng)單元測(cè)試主要關(guān)注模塊的算法實(shí)現(xiàn)和模塊的接口間數(shù)據(jù)的傳遞,而面向?qū)ο蟮念?lèi)測(cè)試主要考察封裝

14、在一個(gè)類(lèi)中的方法和類(lèi)的狀態(tài)行為。進(jìn)行類(lèi)測(cè)試時(shí),要把對(duì)象與其狀態(tài)結(jié)合起來(lái),進(jìn)行對(duì)象狀態(tài)行為的測(cè)試。因?yàn)樵诠ぷ鬟^(guò)程中,對(duì)象的狀態(tài)可能被改變,由此產(chǎn)生新的狀態(tài)。測(cè)試范圍主要是類(lèi)定義之內(nèi)的屬性和服務(wù),以及有限的對(duì)外接口的部分。類(lèi)測(cè)試過(guò)程不僅僅包括檢查輸入數(shù)據(jù)產(chǎn)生的結(jié)果是否與預(yù)期的吻合,還要考慮對(duì)象的狀態(tài),整個(gè)過(guò)程應(yīng)涉及對(duì)象的初念、輸入?yún)?shù)、輸出參數(shù)以及對(duì)象的終念。4.2 方法測(cè)試方法測(cè)試時(shí)以考慮封裝在類(lèi)中的一個(gè)方法對(duì)數(shù)掘進(jìn)行的操作為主。其測(cè)試方法,可以采用傳統(tǒng)的模塊測(cè)試方法。由于方法是封裝在類(lèi)中的,并通過(guò)向所在對(duì)象發(fā)消息來(lái)執(zhí)行,所以他的執(zhí)行與狀態(tài)有關(guān),特別是在操作的多態(tài)性時(shí),設(shè)計(jì)測(cè)試用例時(shí)要考慮設(shè)置對(duì)象的初態(tài),并且要設(shè)計(jì)一些函數(shù)來(lái)觀察隱蔽的狀態(tài)值。4.3 類(lèi)簇測(cè)試(集成測(cè)試)類(lèi)簇是指一組相互有影響的類(lèi)。類(lèi)簇測(cè)試主要根據(jù)系統(tǒng)中相關(guān)類(lèi)的層次關(guān)系,檢查類(lèi)之問(wèn)的相互作用的薩確性,即檢查各相關(guān)類(lèi)之間消息連接的合法性、子類(lèi)的繼承性以及父類(lèi)的一致性、動(dòng)態(tài)綁定執(zhí)行的正確性、類(lèi)簇協(xié)同完成系統(tǒng)功能的正確性等等。他包括測(cè)試有兩種不同策略:縱向測(cè)試、橫向測(cè)試。4.4 系統(tǒng)測(cè)試面向?qū)ο蟮南到y(tǒng)測(cè)試是對(duì)所有程序和外部成員構(gòu)成的整個(gè)系統(tǒng)進(jìn)行整體測(cè)試,檢驗(yàn)軟件和其他系統(tǒng)成員配合工作是否詐確

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論