




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
代碼可靠性測試第一章代碼可靠性測試與之前的測試區(qū)別主要加入比較多的靜態(tài)測試一、代碼可靠性設(shè)計一般分為4個方面:避免錯誤設(shè)計、查找缺陷設(shè)計、容錯保護(hù)設(shè)計和降低復(fù)雜度設(shè)計避免錯誤設(shè)計設(shè)計原則:控制和減少程序的復(fù)雜性,慎重使用容易引入缺陷的數(shù)據(jù)類型和方法遵循規(guī)則:改進(jìn)軟件結(jié)構(gòu),提高模塊獨立性;設(shè)計的扇入和扇出適中;保證模塊規(guī)模適中查找缺陷設(shè)計是指在設(shè)計中增加程序運行時自動查找存在錯誤的一種設(shè)計方法。通過在程序重要模塊中或者容易出錯的位置設(shè)置檢查點,等待錯誤的出現(xiàn),其方法包括看門狗定時器、循環(huán)等待次數(shù)控制、軟硬件交互檢查設(shè)計、數(shù)據(jù)合法性檢查,也包括對ROM中的代碼進(jìn)行和校驗、檢測內(nèi)存、對關(guān)鍵函數(shù)功能的檢查以及系統(tǒng)診斷。容錯機制的設(shè)計是指在設(shè)計中賦予程序某種特殊的功能,使程序在錯誤已被錯誤觸發(fā)的情況下,系統(tǒng)仍然具有正常運行能力的一種設(shè)計方法。常出現(xiàn)的容錯性保護(hù)是冗余設(shè)計技術(shù),冗余設(shè)計技術(shù)實現(xiàn)的原理是在一套完整的軟件系統(tǒng)以外,設(shè)計一種不同路徑、不同實現(xiàn)方案的軟件作為內(nèi)分,在出現(xiàn)故障時可以用冗余的部分進(jìn)行替換,從而維護(hù)軟件系統(tǒng)的正常運行。4、 降低復(fù)雜性設(shè)計主旨思想是保證軟件原始需求功能的基礎(chǔ)上,盡可能簡化軟件的結(jié)構(gòu),縮短模塊內(nèi)代碼的長度。在軟件復(fù)雜程度超過一定的范圍時,出錯率會明顯增加,降低復(fù)雜度是保證軟件質(zhì)量的有效方法之一。二、代碼可靠性編程注意的規(guī)范:形式上的規(guī)范主要有:命名的規(guī)范、代碼風(fēng)格。包括文件結(jié)構(gòu)、程序版本、命名規(guī)則內(nèi)容上的規(guī)范主要指高質(zhì)量的編程、可靠性編程、一致性編程。邏輯和執(zhí)行、函數(shù)設(shè)計、接口設(shè)計、數(shù)據(jù)操作結(jié)構(gòu)上的規(guī)范主要指分層分塊、封裝隔離的思想第二章軟件代碼可靠性測試:為了測試和評價高可靠性、高安全性的軟件系統(tǒng)而運用一系列測試手段對軟件系統(tǒng)實施測試,發(fā)現(xiàn)軟件的需求分析錯誤、設(shè)計錯誤、代碼錯誤、測試隱患和文檔錯誤的過程。需要考慮的方面包括:文檔測試、測試用例的良好設(shè)計、測試過程管理、測試環(huán)境搭建、對安全可靠性指標(biāo)性能指標(biāo)的測試要采用行之有效的測試手段,并將其作為測試的重點、測試配置管理。軟件測試的目的是做大限度的發(fā)現(xiàn)軟件的錯誤,減少軟件中殘留的錯誤,提高軟件的質(zhì)量,能夠驗證軟件的功能性和性能性、可用性、可移植性、約束和限制第三章軟件代碼的可靠性測試包含基于模型的需求驗證、軟件質(zhì)量度量、軟件代碼靜態(tài)分析、軟件代碼動態(tài)分析、黑盒測試、白盒測試、單元測試、集成測試、系統(tǒng)測試、文檔測試等測試手段,其中文檔測試、質(zhì)量度量、靜態(tài)分析、代碼分析屬于靜態(tài)分析,單元測試、集成測試、系統(tǒng)測試屬于動態(tài)測試。單元測試一般采用白盒測試的技術(shù)、集成測試一般采用白盒測試和黑盒測試相結(jié)合的方式進(jìn)行,而系統(tǒng)測試大多采用黑盒測試的思想。文檔測試包括基于模型的需求驗證、測試需求提取,同時將測試過程控制與配置管理作為軟件測試的一部分,對
軟件代碼可靠性進(jìn)行了充分地闡述。靜態(tài)測試:代碼可靠性測試的過程(其階段分為):測試需求分析、制定測試計劃、設(shè)計分析、測試工具選擇和測試數(shù)據(jù)準(zhǔn)備、測試執(zhí)行、回歸測試、測試結(jié)束后及時的總結(jié),對測試結(jié)果分析右側(cè)是負(fù)責(zé)人提交測試報告。代碼可靠性測試過程如下圖:靜態(tài)測試X單元測試集成測試-質(zhì)度以代碼分折*=口盒測試}■■::動態(tài)測試代碼可靠性測試過程如下圖:靜態(tài)測試X單元測試集成測試-質(zhì)度以代碼分折*=口盒測試}■■::動態(tài)測試:葉'黑盒測試」i:靜態(tài)分析;;;:系統(tǒng)測試=汽文檔測試]測試需求提恥軟件代碼可靠性測試技術(shù):黑盒測試技術(shù)(P206)、白盒測試技術(shù)(P241)、單元測試技術(shù)、集成測試技術(shù)、系統(tǒng)測試技術(shù)單元測試涉及的測試方面:模塊接口測試、局部數(shù)據(jù)、邊界值、出錯處理、獨立路徑集成測試測試的方面:檢查模塊接口的數(shù)據(jù)、各個子模塊組合起來檢查父模塊是否達(dá)到預(yù)期的功能、檢查一個模塊的功能是否對另一個模塊的功能產(chǎn)生影響、全局?jǐn)?shù)據(jù)是否有問題、單個模塊的誤差積累起來是否會放大。從而達(dá)到不可預(yù)料的后果。第六章軟件靜態(tài)分析又稱為用源代碼分析,與動態(tài)測試相對應(yīng),靜態(tài)測試不必設(shè)計測試用例,不運行被測試代碼,只對源程序代碼本身進(jìn)行分析。通過人工方式進(jìn)行代碼靜態(tài)分析具有很大的局限性,原因是比較耗時、易犯錯、可靠性低,對內(nèi)缺乏可持續(xù)性對外不具有權(quán)威性。新一代代碼測試技術(shù)是基于規(guī)則的代碼檢查,意義重編程規(guī)范為依據(jù)分析源代碼,發(fā)現(xiàn)其不合規(guī)則和違反的地方,并給出違規(guī)的具體信息。注意:在單元測試中判定和路徑的區(qū)別是判定是路徑的組成部分,并且判定數(shù)>=路徑數(shù)對于語句數(shù)量,如果這個語句是一個函數(shù)調(diào)用的話也算在語句數(shù)中。掌握6.3.1數(shù)據(jù)類型及數(shù)據(jù)類型轉(zhuǎn)換規(guī)范(1.數(shù)據(jù)類型相關(guān)的編碼風(fēng)格)P135理解軟件代碼靜態(tài)分析的概念P132第七章掌握7.3典型錯誤類型分析(緩沖區(qū)溢出,內(nèi)存泄露,引用未申明或初始化的變量,編譯錯誤等)P173理解7.1軟件代碼動態(tài)分析的概念P169:是指在代碼無錯誤地通過編譯的前提下,通過檢查源程序的語法、結(jié)構(gòu)、過程、接口等來檢查程序的正確性,找出代碼中隱藏含的運行時錯誤和缺陷,如數(shù)學(xué)異常、緩沖區(qū)溢出、指針地址的有效性或數(shù)組越界錯誤等軟件運行時錯誤。軟件代碼動態(tài)分析的原理P1701數(shù)據(jù)流分析通常用數(shù)據(jù)流來分析數(shù)據(jù)處理異常現(xiàn)象,包括初始化、賦值、引用數(shù)據(jù)異常第八章理解8.1軟件黑盒測試概念也稱基于軟件需求的測試,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,對軟件的功能、接口以及其他質(zhì)量特性進(jìn)行測試,主要驗證系統(tǒng)是否滿足軟件需求。8.3軟件黑盒測試技術(shù)和方法(1)功能分解法(2)等價類劃分法(3)邊界值分析法(4)因果圖分析法(5)場景測試法(6)猜錯法理解第九章軟件白盒測試軟件白盒測試概念又稱基于結(jié)構(gòu)的測試或基于代碼的測試,是按照程序內(nèi)部的結(jié)構(gòu)來進(jìn)行測試,通過測試來檢測產(chǎn)品內(nèi)部動作是否按照設(shè)計規(guī)格說明書的規(guī)定正常進(jìn)行,檢驗程序中的每條通路是否都能按預(yù)定要求正確工作。軟件白盒測試技術(shù)和方法(1)靜態(tài)白盒測試:代碼質(zhì)量度量,編程準(zhǔn)則檢查,程序代碼動態(tài)分析(2)對判定的測試(3)對路徑的測試(4)對循環(huán)的測試(5)對變量的測試十章掌握10.1.3單元測試的主要目的P2771、驗證代碼實現(xiàn)與設(shè)計文檔的一致性2、發(fā)現(xiàn)設(shè)計文檔中存在的錯誤3、發(fā)現(xiàn)代碼本身發(fā)現(xiàn)的錯誤。單元測試方法和技術(shù)(程序流程圖,常用的邏輯覆蓋測試方法及測試數(shù)據(jù)設(shè)計,以及各種覆蓋方法的目的)P279P2801、 單元測試方法:典型值、邊界值、錯誤推測法、異常處理法(輸入異常值作為測試用例)2、 語句覆蓋率,判定/分支覆蓋率(被測軟件實際執(zhí)行判定分支與總分支數(shù)之比)重點課本例子!理解10.1單元測試的概念及重要性P276單元測試是指某一個具體的函數(shù)、類或者類的方法,對于C語言來說是一個函數(shù),對于C++、Java來說單元測試的對象通常是類或者類的方法,對于圖形效果的軟件來說測試對象時一個窗口或者一個菜單。10.3單元測試策略和過程P285P2871、 自頂向下的集成策略:首先歲最頂層的單元進(jìn)行測試,把頂層單元所調(diào)用的單元作為樁模塊;其次,對第二次單元進(jìn)行測試,使用最頂層的單元作為驅(qū)動模塊,把該層的單元所調(diào)用的作為樁模塊;依此類推直到測試完所有的單元(周期長)2、 自底向上的測試策略:首先對最底層的單元展開測試,將調(diào)用該單元的單元作為驅(qū)動模塊;然后再逐層對被測單元進(jìn)行測試,以下層被測試過的單元作為樁模塊,依此類推直到測試完所有的單元(復(fù)雜、時間周期長、側(cè)重于功能測試而不是面向整個程序結(jié)構(gòu)的測試)3、 獨立測試:忽略各個單元之間的關(guān)系,為每個單元單獨設(shè)計樁模塊和驅(qū)動模塊,單獨測試各個單元。(目前最好的方法,可以縮短軟件開發(fā)周期,劣勢:無法早起得到開展集成測試策略,不方便建樁模塊和驅(qū)動模塊)4、 過程:計劃階段、設(shè)計實現(xiàn)階段、執(zhí)行階段、總結(jié)階段287頁圖十一章:掌握11.3.1集成測試策略P3361、非增量式集成策略(大爆炸式集成策略)定義:大爆炸集成也稱為一次性組裝或整體拼裝,就是把所有通過單元測試的模塊一次性集成到一起進(jìn)行測試,不考慮組件之間的相互依賴性及可能存在的風(fēng)險。目的:盡可能縮短測試時間,使用最少的測試用例驗證系統(tǒng)優(yōu)點:可以并行調(diào)試所有模塊工作效率高;需要的驅(qū)動、樁模塊、測試用例少;方法簡單易行。缺點:不能充分對各模塊之間的接口進(jìn)行測試;不能良好的對全局?jǐn)?shù)據(jù)結(jié)構(gòu)進(jìn)行測試;一次集成模塊多時,會出現(xiàn)大量錯誤一次性運行成功概率??;修復(fù)一處錯誤困難;一次性集成完成若出現(xiàn)軟件問題,軟件龐大不易查找定位問題所在2、 自頂向下集成策略:就是按照系統(tǒng)層次結(jié)構(gòu)圖,以主程序模塊為中心,自上而下逐步測試處于低層的模塊,按照深度優(yōu)先或者廣度優(yōu)先策略,對各個模塊一邊組裝一邊進(jìn)行測試。目的:從頂層控制開始,沿著與軟件開發(fā)設(shè)計順序同樣的路線對被測系統(tǒng)進(jìn)行測試,來驗證功能和接口的正確性。3、自底向上集成:是從系統(tǒng)層次結(jié)構(gòu)圖最低層模塊開始進(jìn)行組裝和集成測試的方式,該策略由于從底層開始逐步向上集成,因此對于一個給定層次模塊而言,其子模塊已經(jīng)全部被集成驗證過,不需要創(chuàng)建樁模塊,直接運行子模塊即可。目的:從依賴最小的底層模塊開始,按照層次結(jié)構(gòu)圖,逐層向上集成,驗證系統(tǒng)穩(wěn)定性4、三明治集成策略:集成了自頂向下和自底向上兩種集成方法的優(yōu)點,因此也屬于基于功能分解集成。通常三明治集成是將被測系統(tǒng)劃分為三個層次,中間層為目標(biāo),對頂層測試采用自頂向下的方式,對底層采用自底向上的方式,最后測試在目標(biāo)層會和。目的:綜合利用自頂向下和自底向上兩種集成測試策略的優(yōu)點5、 改進(jìn)的三明治集成策略:與三明治集成策略相同,集自頂向下和自底向上集成策略的優(yōu)點于一身,但本策略通過更改集成策略方式和方法以彌補三明治集成策略的不足。理解11.1集成測試基本概念及其主要任務(wù)P331集成測試又被稱為組裝測試、部件測試、子系統(tǒng)測試:是在單元測試的基礎(chǔ)上,將所有已通過單元測試的單元按照軟件概要設(shè)計文檔的要求組裝成為部件、子系統(tǒng)或系統(tǒng),并進(jìn)行測試的過程,一般是指對程序模塊按照特定的集成測試策略進(jìn)行組裝,對模塊之間的接口以及集成后模塊的功能等進(jìn)行正確性的檢驗。任務(wù):主要任務(wù)是驗證集成后模塊之間的接口以及集成模塊的功能。11.3集成測試過程P3431、計劃階段(軟件概要設(shè)計文檔通過評審之后進(jìn)行詳細(xì)的集成測試計劃主要的參考文檔:軟件需求規(guī)格說明文檔、軟件概要設(shè)計文檔制定)2、設(shè)計階段:依據(jù)軟件需求規(guī)格說明文檔,軟件概要設(shè)計文檔和軟件集成測試計劃文檔,分析被測系統(tǒng)結(jié)構(gòu)、接口、模塊、測試策略、測試環(huán)境、時間進(jìn)度安排等因素、3、實施階段:主要工作依據(jù)設(shè)計階段的分析編寫集成測試用例、開發(fā)集成測試所需腳本、集成測試所需測試工具的配置等內(nèi)容。4、執(zhí)行階段:執(zhí)行集成測試用例并記錄相應(yīng)結(jié)果和存在的缺陷,更改后回歸測試5、評估階段:分析集成測試結(jié)果,并進(jìn)行匯總分析形成集成測試報告,然后將集成測試結(jié)果與研制方進(jìn)行討論和驗證確定集成測試結(jié)果是否有效,測試環(huán)境、測試過程是否受控,以及被測系統(tǒng)是否通過集成測試。十六章掌握16.1測試文檔分類(測試計劃,測試用例,測試總結(jié)報告)1、測試計劃:是描述預(yù)測活動的范圍、方法、資源和進(jìn)度的一種文檔。它確定測試項、測試特征、測試任務(wù)、執(zhí)行每一項任務(wù)的人員以及需要應(yīng)急對策的任何風(fēng)險。2、測試用例:是針對一項特定的軟件產(chǎn)品進(jìn)行測試任務(wù)的描述,體現(xiàn)測試方案、方法、技術(shù)和策略;內(nèi)容包括測試目標(biāo),測試環(huán)境、輸入數(shù)據(jù)、測試步驟、預(yù)期結(jié)果等,并形成文檔。3、測試報
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 混凝土硬化路施工方案
- 板房防水卷材施工方案
- TSHAEPI 014-2024 溫室氣體(二氧化碳和甲烷)走航監(jiān)測技術(shù)規(guī)范
- 二零二五年度網(wǎng)絡(luò)安全就業(yè)協(xié)議書協(xié)議內(nèi)容詳盡規(guī)范
- 二零二五年度股權(quán)投資公司股東合作協(xié)議
- 2025年度軟裝行業(yè)市場監(jiān)測與風(fēng)險評估合同
- 二零二五年度廣東省房屋租賃合同租賃保險合作協(xié)議
- 二零二五年度娛樂產(chǎn)業(yè)動漫IP授權(quán)使用勞動合同
- 二零二五年度店鋪轉(zhuǎn)讓定金及品牌授權(quán)使用合同
- 二零二五年度商業(yè)空間合租租賃及稅務(wù)咨詢合同
- 2023年湖南食品藥品職業(yè)學(xué)院高職單招(英語)試題庫含答案解析
- GB/T 39096-2020石油天然氣工業(yè)油氣井油管用鋁合金管
- 爐外精煉說課
- GB/T 23111-2008非自動衡器
- GB/T 18877-2020有機無機復(fù)混肥料
- 三大構(gòu)成之立體構(gòu)成-課件
- DB11 938-2022 綠色建筑設(shè)計標(biāo)準(zhǔn)
- 最新家政服務(wù)員培訓(xùn)課件
- 2022譯林版新教材高一英語必修二單詞表及默寫表
- 全國青少年機器人技術(shù)等級考試:二級培訓(xùn)全套課件
- TB T2075-《電氣化鐵道接觸網(wǎng)零部件》
評論
0/150
提交評論