測(cè)試用例軟件工程基礎(chǔ).ppt_第1頁(yè)
測(cè)試用例軟件工程基礎(chǔ).ppt_第2頁(yè)
測(cè)試用例軟件工程基礎(chǔ).ppt_第3頁(yè)
測(cè)試用例軟件工程基礎(chǔ).ppt_第4頁(yè)
測(cè)試用例軟件工程基礎(chǔ).ppt_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余34頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、1,第5章 軟件開(kāi)發(fā)技術(shù)基礎(chǔ),程序設(shè)計(jì)基礎(chǔ),軟件工程基礎(chǔ),結(jié)構(gòu)化程序設(shè)計(jì),面向?qū)ο蟪绦蛟O(shè)計(jì),2,程序設(shè)計(jì)基礎(chǔ),程序設(shè)計(jì),程序設(shè)計(jì)(Programing)是指利用計(jì)算機(jī)解決問(wèn)題的全過(guò)程,它包含多方面的內(nèi)容,而編寫(xiě)程序只是其中的一部分。,分析問(wèn)題,確定處理方案,確定操作步驟,編寫(xiě)程序,上機(jī)運(yùn)行程序,整理結(jié)果,程序設(shè)計(jì)的一般步驟:,3,程序設(shè)計(jì)方法與風(fēng)格,程序設(shè)計(jì)方法是指關(guān)于以什么觀點(diǎn)來(lái)研究問(wèn)題并進(jìn)行求解,以及如何進(jìn)行系統(tǒng)設(shè)計(jì)的軟件方法學(xué)。 程序設(shè)計(jì)方法主要經(jīng)過(guò)了結(jié)構(gòu)化程序設(shè)計(jì)和面向?qū)ο蟪绦蛟O(shè)計(jì)兩個(gè)階段 。,程序設(shè)計(jì)基礎(chǔ),4,程序設(shè)計(jì)方法與風(fēng)格,程序設(shè)計(jì)風(fēng)格是指編寫(xiě)程序時(shí)所表現(xiàn)出的特點(diǎn)、習(xí)慣和邏輯思

2、路。 程序設(shè)計(jì)風(fēng)格強(qiáng)調(diào)簡(jiǎn)單和清晰?!扒逦谝?,效率第二”的觀點(diǎn)是當(dāng)今主導(dǎo)的程序設(shè)計(jì)風(fēng)格,程序設(shè)計(jì)基礎(chǔ),5,結(jié)構(gòu)化程序設(shè)計(jì),采用自頂向下、逐步求精的方法 程序結(jié)構(gòu)模塊化,每個(gè)模塊只有一個(gè)入口和一個(gè)出口 使用三種基本控制結(jié)構(gòu)描述程序流程,原則:,結(jié)構(gòu)化程序設(shè)計(jì)是指:為使程序具有一個(gè)合理的結(jié)構(gòu)以保證程序正確性而規(guī)定的一套如何進(jìn)行程序設(shè)計(jì)的原則。,所謂模塊化就是把一個(gè)大型的程序按照功能分解為若干相對(duì)獨(dú)立的、較小的子程序(即模塊),并把這些模塊按層次關(guān)系進(jìn)行組織。,6,順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu),結(jié)構(gòu)化程序設(shè)計(jì),基本結(jié)構(gòu):,7,數(shù)據(jù)與對(duì)數(shù)據(jù)的操作(函數(shù))相分離 可重用性差,結(jié)構(gòu)化程序設(shè)計(jì),程序結(jié)構(gòu)良好

3、 程序清晰易讀、易于使用和維護(hù) 提高編程的效率,降低開(kāi)發(fā)成本,優(yōu)點(diǎn),缺點(diǎn),8,面向?qū)ο蟪绦蛟O(shè)計(jì),對(duì)象,在現(xiàn)實(shí)生活中,所有東西都是對(duì)象。 任何對(duì)象都有兩個(gè)共同的特點(diǎn):對(duì)象的屬性和對(duì)象的操作。 一個(gè)對(duì)象通常由對(duì)象名、屬性和操作組成。,概念,9,面向?qū)ο蟪绦蛟O(shè)計(jì),屬性是用來(lái)描述對(duì)象的狀態(tài),對(duì)象的狀態(tài)又稱為對(duì)象的靜態(tài)屬性。,概念,屬性,10,面向?qū)ο蟪绦蛟O(shè)計(jì),對(duì)象的操作又稱為對(duì)象的行為,主要表述對(duì)象的動(dòng)態(tài)屬性。,概念,操作,11,面向?qū)ο蟪绦蛟O(shè)計(jì),封裝就是把對(duì)象的屬性和操作結(jié)合成一個(gè)不可分割的整體。 封裝就是使一個(gè)對(duì)象形成接口和實(shí)現(xiàn)兩個(gè)部分。對(duì)于用戶來(lái)說(shuō),接口是可見(jiàn)的,實(shí)現(xiàn)是不可見(jiàn)的。,概念,封裝,1

4、2,面向?qū)ο蟪绦蛟O(shè)計(jì),是一組具有相同屬性和相同操作的對(duì)象的集合。一個(gè)類中的每個(gè)對(duì)象都是這個(gè)類的一個(gè)實(shí)例。,概念,類,13,面向?qū)ο蟪绦蛟O(shè)計(jì),繼承是表達(dá)類之間相似性的一種機(jī)制,即在已有的類的基礎(chǔ)之上增加構(gòu)造新的類,前者稱為父類(或超類),后者稱為子類。 子類除自動(dòng)擁有父類的全部屬性和操作外,還可以進(jìn)一步定義新的屬性和操作。 如果子類只從一個(gè)父類繼承,則稱為單一繼承; 如果子類從一個(gè)以上父類繼承,則稱為多重繼承。 優(yōu)點(diǎn):能清晰地體現(xiàn)相關(guān)類之間的層次結(jié)構(gòu)關(guān)系;可以減少代碼和數(shù)據(jù)的冗余,增加程序的復(fù)用能力。,概念,繼承,14,面向?qū)ο蟪绦蛟O(shè)計(jì),對(duì)象在收到消息時(shí)要予以響應(yīng),不同的對(duì)象收到同一消息可產(chǎn)生完

5、全不同的結(jié)果,這一現(xiàn)象叫做多態(tài)性。 多態(tài)性增強(qiáng)了軟件的靈活性和重用性。 多態(tài)性與繼承性相結(jié)合使軟件具有更廣的重用性和可擴(kuò)充性。,概念,多態(tài)性,15,面向?qū)ο蟪绦蛟O(shè)計(jì),面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想,特性:,基本思想: 將人們?cè)谌粘I钪辛?xí)慣的思維方式和表達(dá)方式應(yīng)用在程序設(shè)計(jì)中,以客觀世界中的對(duì)象為中心,以類和繼承為構(gòu)造機(jī)制來(lái)進(jìn)行軟件開(kāi)發(fā)活動(dòng)。 優(yōu)點(diǎn): 符合人們通常解決問(wèn)題的思維方式;對(duì)象結(jié)構(gòu)穩(wěn)定;軟件具有易于擴(kuò)充、修改和維護(hù)的特性。,封裝性、繼承性、多態(tài)性,16,軟件工程基礎(chǔ),1軟件危機(jī),軟件危機(jī)是指在軟件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一系列嚴(yán)重問(wèn)題。軟件危機(jī)主要體現(xiàn)在以下幾個(gè)方面: 軟件開(kāi)發(fā)的實(shí)際成

6、本和進(jìn)度估計(jì)不準(zhǔn)確 開(kāi)發(fā)出來(lái)的軟件常常不能使用戶滿意 軟件產(chǎn)品的質(zhì)量不高,存在漏洞,需要經(jīng)常打補(bǔ)丁 大量已有的軟件難以維護(hù) 軟件的開(kāi)發(fā)和維護(hù)成本不斷提高,直接威脅計(jì)算機(jī)應(yīng)用的擴(kuò)大 軟件生產(chǎn)技術(shù)進(jìn)步緩慢,跟不上硬件的發(fā)展和人們需求的增長(zhǎng),17,看一個(gè)實(shí)際例子: Windows 7的誕生過(guò)程 2007年12月20日:新技術(shù)預(yù)覽版 正式上線; 2008年12月12日:軟件評(píng)測(cè)版(有“發(fā)送反饋信息”鏈接)正式上線; 微軟2009年10月22日于美國(guó)、2009年10月23日于中國(guó)正式發(fā)布 Windows 7 2011年2月22日:RTM SP1(補(bǔ)丁)正式上線。,18,軟件工程基礎(chǔ),軟件工程是指應(yīng)用計(jì)算

7、機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,以工程化的原則和方法來(lái)開(kāi)發(fā)與維護(hù)軟件的學(xué)科。研究軟件工程的主要目的就是在規(guī)定的時(shí)間、規(guī)定的開(kāi)發(fā)費(fèi)用內(nèi)開(kāi)發(fā)出滿足用戶需求的高質(zhì)量的軟件系統(tǒng)(高質(zhì)量是指錯(cuò)誤率低、好用、易用、可移植、易維護(hù)等)。,2軟件工程概述,19,軟件工程的原則: 制定階段計(jì)劃 階段評(píng)審 制定規(guī)范,實(shí)行嚴(yán)格的產(chǎn)品控制,2軟件工程概述,軟件工程基礎(chǔ),20,將軟件產(chǎn)品從開(kāi)始計(jì)劃起,到廢棄不用止,稱為軟件生命周期。 軟件生命周期一般劃分為計(jì)劃、開(kāi)發(fā)和運(yùn)行3個(gè)時(shí)期,每一時(shí)期又區(qū)分為若干個(gè)階段。 計(jì)劃時(shí)期有問(wèn)題定義和可行性研究?jī)蓚€(gè)階段; 開(kāi)發(fā)時(shí)期有需求分析、設(shè)計(jì)、編碼和測(cè)試4個(gè)階段; 運(yùn)行時(shí)期主要是系統(tǒng)維護(hù)

8、階段。,軟件生命周期,軟件工程基礎(chǔ),2軟件工程概述,21,目的:弄清“用戶需要計(jì)算機(jī)解決什么問(wèn)題”,以及項(xiàng)目所需的資源和經(jīng)費(fèi) 任務(wù):編寫(xiě)出“系統(tǒng)目標(biāo)與范圍說(shuō)明書(shū)”,軟件工程基礎(chǔ),問(wèn)題定義,3軟件工程過(guò)程,22,目的:弄清“用戶要解決的問(wèn)題是否能夠解決和值得解決” 任務(wù):寫(xiě)出“可行性論證報(bào)告”。 應(yīng)制訂出“項(xiàng)目實(shí)施計(jì)劃”,或提出終止該項(xiàng)目的建議,軟件工程基礎(chǔ),可行性研究,3軟件工程過(guò)程,23,目的:要解決的問(wèn)題是“做什么”。具體而言,就是通過(guò)對(duì)問(wèn)題及其環(huán)境的理解、分析和綜合,以確定最終的目標(biāo)系統(tǒng)必須做哪些工作 任務(wù):編寫(xiě)“需求規(guī)格說(shuō)明書(shū)”,這份文檔應(yīng)包括對(duì)軟件的性能需求、功能需求、環(huán)境約束和外部

9、接口等描述,軟件工程基礎(chǔ),需求分析,3軟件工程過(guò)程,24,目的:確定軟件的總體結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)、用戶界面和算法細(xì)節(jié) 任務(wù):軟件設(shè)計(jì)文檔 軟件設(shè)計(jì)分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),軟件工程基礎(chǔ),軟件設(shè)計(jì),3軟件工程過(guò)程,25,總體設(shè)計(jì) 目的:要解決的問(wèn)題是“怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng)” 任務(wù):確定軟件的總體結(jié)構(gòu),進(jìn)行模塊劃分,確定每個(gè)模塊的功能、接口及模塊之間的調(diào)用關(guān)系,并對(duì)全局?jǐn)?shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì),同時(shí)產(chǎn)生概要設(shè)計(jì)說(shuō)明書(shū),軟件工程基礎(chǔ),軟件設(shè)計(jì),3軟件工程過(guò)程,26,詳細(xì)設(shè)計(jì) 目的:要解決的問(wèn)題是“應(yīng)該怎樣具體實(shí)現(xiàn)目標(biāo)系統(tǒng)” 任務(wù):在概要設(shè)計(jì)的基礎(chǔ)上,設(shè)計(jì)每個(gè)模塊實(shí)現(xiàn)的細(xì)節(jié)及對(duì)局部數(shù)據(jù)進(jìn)行設(shè)計(jì)(包括模塊的數(shù)據(jù)結(jié)構(gòu)和所需

10、的算法),同時(shí)產(chǎn)生詳細(xì)設(shè)計(jì)說(shuō)明書(shū),軟件工程基礎(chǔ),軟件設(shè)計(jì),3軟件工程過(guò)程,27,目的:產(chǎn)生能在計(jì)算機(jī)上執(zhí)行的程序 任務(wù):把詳細(xì)設(shè)計(jì)的結(jié)果翻譯成用該程序設(shè)計(jì)語(yǔ)言編寫(xiě)的程序代碼(源程序),軟件工程基礎(chǔ),軟件編碼,3軟件工程過(guò)程,28,軟件測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過(guò)程 目的和任務(wù):通過(guò)在計(jì)算機(jī)上執(zhí)行程序來(lái)盡可能多地發(fā)現(xiàn)軟件產(chǎn)品中的錯(cuò)誤和缺陷,并改正程序中的錯(cuò)誤,以保證程序的可靠運(yùn)行 軟件測(cè)試分為靜態(tài)分析和動(dòng)態(tài)測(cè)試 動(dòng)態(tài)測(cè)試又分為白盒測(cè)試和黑盒測(cè)試,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,29,白盒測(cè)試 是測(cè)試者完全了解被測(cè)程序的內(nèi)部邏輯結(jié)構(gòu)和處理過(guò)程,因此,可以對(duì)其內(nèi)部結(jié)構(gòu)和處理過(guò)程進(jìn)

11、行測(cè)試,檢驗(yàn)內(nèi)部控制結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)是否有錯(cuò),實(shí)際的運(yùn)行結(jié)果與期望的結(jié)果是否一致,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,30,黑盒測(cè)試 是測(cè)試者已經(jīng)知道被測(cè)程序的功能,而對(duì)程序內(nèi)部的邏輯結(jié)構(gòu)和處理過(guò)程完全不用考慮,只是對(duì)它的每一個(gè)功能進(jìn)行測(cè)試,將測(cè)試后的結(jié)果與期望的結(jié)果進(jìn)行分析比較,檢查程序的功能是否符合規(guī)格說(shuō)明書(shū)的要求。,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,31,軟件測(cè)試的每一次測(cè)試都需要準(zhǔn)備好一些測(cè)試數(shù)據(jù),與被測(cè)程序一起輸入到計(jì)算機(jī)中執(zhí)行;一般把程序執(zhí)行一次需要的一組測(cè)試數(shù)據(jù)和該組測(cè)試數(shù)據(jù)可以得出怎樣的輸出結(jié)果(期望結(jié)果)稱為一個(gè)“測(cè)試用例”,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,3

12、2,測(cè)試用例設(shè)計(jì) 測(cè)試用例是由測(cè)試數(shù)據(jù)和期望結(jié)果組成。設(shè)計(jì)測(cè)試用例的目的就是用盡可能少的測(cè)試數(shù)據(jù),達(dá)到盡可能大的程序覆蓋面,發(fā)現(xiàn)盡可能多的軟件錯(cuò)誤和問(wèn)題,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,33,軟件測(cè)試的原則 確定期望輸出結(jié)果 測(cè)試者應(yīng)避免測(cè)試自己的程序 對(duì)非法和非期望的輸入數(shù)據(jù)也要像合法的和期望的輸入數(shù)據(jù)一樣編寫(xiě)測(cè)試用例 程序模塊經(jīng)測(cè)試后,殘存的錯(cuò)誤數(shù)目與已發(fā)現(xiàn)的錯(cuò)誤數(shù)目成正比 嚴(yán)格按測(cè)試計(jì)劃執(zhí)行,避免測(cè)試的隨意性 對(duì)每一個(gè)測(cè)試結(jié)果應(yīng)當(dāng)做全面檢查 妥善保存測(cè)試計(jì)劃、測(cè)試用例、出錯(cuò)統(tǒng)計(jì)和最終分析報(bào)告,為軟件維護(hù)提供方便,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,34,軟件測(cè)試的實(shí)施 單元測(cè)

13、試:是對(duì)每一個(gè)編制好的模塊進(jìn)行測(cè)試,其目的在于發(fā)現(xiàn)和排除各模塊內(nèi)部可能存在的差錯(cuò)及詳細(xì)設(shè)計(jì)中產(chǎn)生的錯(cuò)誤。進(jìn)行單元測(cè)試時(shí),根據(jù)程序的內(nèi)部結(jié)構(gòu)設(shè)計(jì)測(cè)試用例,主要采用白盒測(cè)試法,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,35,軟件測(cè)試的實(shí)施 集成測(cè)試。是在單元測(cè)試的基礎(chǔ)上,將所有模塊按照設(shè)計(jì)要求組裝成為系統(tǒng)而進(jìn)行的測(cè)試,它的任務(wù)是檢查模塊間的接口和通信、各子功能的組合能否達(dá)到預(yù)期要求的功能、全程數(shù)據(jù)結(jié)構(gòu)是否有問(wèn)題等。集成測(cè)試主要發(fā)現(xiàn)設(shè)計(jì)階段產(chǎn)生的錯(cuò)誤,通常采用黑盒測(cè)試法,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,36,軟件測(cè)試的實(shí)施 集成測(cè)試時(shí),將各個(gè)模塊組裝成系統(tǒng)的方法有: 非增量組裝方式是先分別對(duì)每

14、個(gè)模塊進(jìn)行單元測(cè)試,再把所有模塊按設(shè)計(jì)要求組裝在一起進(jìn)行測(cè)試,最終得到所要求的軟件 增量組裝方式是把下一個(gè)要測(cè)試的模塊同已經(jīng)測(cè)試好的那些模塊結(jié)合起來(lái)進(jìn)行測(cè)試,測(cè)試完以后再把下一個(gè)應(yīng)該測(cè)試的模塊結(jié)合進(jìn)來(lái)測(cè)試,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,37,軟件測(cè)試的實(shí)施 確認(rèn)測(cè)試。確認(rèn)測(cè)試是在集成測(cè)試通過(guò)后,在用戶的參與下進(jìn)行確認(rèn)測(cè)試。這時(shí)通常使用實(shí)際數(shù)據(jù)進(jìn)行測(cè)試,以驗(yàn)證系統(tǒng)是否能滿足用戶的實(shí)際需要。它的任務(wù)就是以需求規(guī)格說(shuō)明書(shū)作為依據(jù)來(lái)驗(yàn)證軟件的性能、功能及其他特征是否與用戶的要求一致,通常采用黑盒測(cè)試,軟件工程基礎(chǔ),軟件測(cè)試,3軟件工程過(guò)程,38,軟件測(cè)試的實(shí)施 系統(tǒng)測(cè)試。系統(tǒng)測(cè)試是在更大范圍內(nèi)進(jìn)行的測(cè)試。系統(tǒng)測(cè)試是把通過(guò)確認(rèn)測(cè)試后的軟件與計(jì)算機(jī)硬件、外設(shè)、某些支持軟

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論