




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
軟件詳細(xì)設(shè)計(jì)文檔在動態(tài)單元測試過程中的應(yīng)用前言:隨著汽車日益互聯(lián)化、智能化和電動化,硬件組件的抽象化,軟件功能變得愈發(fā)復(fù)雜——汽車正在從基于硬件的創(chuàng)新轉(zhuǎn)向基于軟件的創(chuàng)新,并且軟件安全和質(zhì)量越來越受到制造商和消費(fèi)者的關(guān)注,而傳統(tǒng)的工具和流程可能無法滿足汽車發(fā)展與應(yīng)用的實(shí)際需求。為了解決這些安全和質(zhì)量方面的問題,汽車工業(yè)已經(jīng)采用了ASPICE標(biāo)準(zhǔn)和ISO26262標(biāo)準(zhǔn),它們?yōu)殡姎夂碗娮酉到y(tǒng)的開發(fā)提供了最佳的實(shí)踐。單元測試是軟件測試階段最基本的測試,它能夠消除深度未知隱患。它反饋更快,更省時間。此外,ASPICE過程及ISO26262安全規(guī)范同樣對單元測試提出了相關(guān)要求。軟件詳細(xì)設(shè)計(jì)文檔為單元測試提供了基礎(chǔ)的輸入?yún)⒄?。從ASPICE角度來說,沒有詳細(xì)設(shè)計(jì)文檔是無法進(jìn)行單元驗(yàn)證或測試的。這表明,詳細(xì)設(shè)計(jì)文檔指導(dǎo)著單元測試過程的所有活動。同時,使用像VectorCAST/C++這樣的專業(yè)工具,高效進(jìn)行功能測試的同時,保證了代碼的覆蓋度,符合ASPICE和ISO26262行業(yè)規(guī)范要求,并為產(chǎn)品的第三方認(rèn)證提供便捷有力的支持。WHY:(軟件詳細(xì)設(shè)計(jì)文檔與單元測試的基本關(guān)系)從V模型角度圖1ISO26262里面的V模型V模型是在快速應(yīng)用開發(fā)(RapidApplicationDevelopment,RAD)模型基礎(chǔ)上演變而來,其特點(diǎn)就是它清楚的標(biāo)識了開發(fā)和測試的各個階段以及他們之間的對應(yīng)關(guān)系;左邊部分是軟件開發(fā)階段,右邊部分是軟件測試階段。從上圖中我們可以看出,軟件詳細(xì)設(shè)計(jì)文檔對應(yīng)著軟件單元測試,所以要想做好單元測試,就必須有軟件詳細(xì)設(shè)計(jì)文檔作為輸入,同時要求測試工程師對軟件詳細(xì)設(shè)計(jì)文檔有著深刻的理解。軟件詳細(xì)設(shè)計(jì)文檔應(yīng)在編寫代碼之前完成,軟件代碼是對軟件詳細(xì)設(shè)計(jì)文檔的具體實(shí)現(xiàn),軟件單元測試則是以軟件詳細(xì)設(shè)計(jì)為參照,判斷軟件代碼是否符合軟件詳細(xì)設(shè)計(jì)文檔的工作。軟件詳細(xì)設(shè)計(jì)文檔是測試輸入的基礎(chǔ)參照之一圖2軟件詳細(xì)設(shè)計(jì)文檔是測試輸入的基礎(chǔ)參照之一VectorCAST/C++可以為單元測試和集成測試提供高度自動化的解決方案,能夠顯著提升開發(fā)人員在驗(yàn)證安全和任務(wù)關(guān)鍵型嵌入式系統(tǒng)方面的工作效率。廣泛應(yīng)用于航空電子、醫(yī)療設(shè)備、汽車、工業(yè)控制、鐵路和金融行業(yè)。如上圖所示,將詳細(xì)設(shè)計(jì)文檔和單元需求文檔結(jié)合起來,會大大的提高編寫測試用例效率。特別是對于那些顆粒度較大的“單元需求文檔”,需要結(jié)合軟件詳細(xì)設(shè)計(jì)文檔,從顆粒度較大的需求提取出有效的部分來進(jìn)行功能測試。軟件詳細(xì)設(shè)計(jì)文檔與單元需求文檔相輔相成,所以軟件詳細(xì)設(shè)計(jì)文檔在單元測試中有著十分重要的作用。然后,通過相應(yīng)的源代碼使用VectorCAST/C++工具創(chuàng)建測試工程,接著通過VectorCAST/C++工具為需求測試自定義編寫測試用例,同時將需求映射到測試用例,形成測試用例與單元測試需求、測試用例與代碼覆蓋度之間的雙向可追溯性,并且可以在最后的測試報(bào)告中體現(xiàn)出來??焖倮斫夤δ苄枨?,降低溝通成本如果負(fù)責(zé)該項(xiàng)測試測試的人員對項(xiàng)目內(nèi)容了解很有限的話,這就免不了與開發(fā)人員進(jìn)行頻繁的溝通。即使是一個公司內(nèi)部進(jìn)行測試,只要不是開發(fā)人員來進(jìn)行測試,一般也避免不了與開發(fā)人員進(jìn)行溝通,但是如果有了軟件詳細(xì)設(shè)計(jì)文檔,測試人員可以快速了解開發(fā)內(nèi)容,理解功能需求,降低與開發(fā)人員溝通時間與次數(shù),而且能夠較完整的完成其單元測試。圖3有無軟件詳細(xì)設(shè)計(jì)文檔對測試周期和溝通次數(shù)的影響示意圖WHAT:(什么是軟件詳細(xì)設(shè)計(jì)文檔)詳細(xì)設(shè)計(jì)基本概念詳細(xì)設(shè)計(jì)是為了確立每個模塊的實(shí)現(xiàn)算法、數(shù)據(jù)結(jié)構(gòu)以及接口定義,用適當(dāng)?shù)姆椒ū硎舅惴ê蛿?shù)據(jù)結(jié)構(gòu)的細(xì)節(jié)。它通過一些設(shè)計(jì)描述工具,無歧義的描述過程單位的相關(guān)細(xì)節(jié)。詳細(xì)設(shè)計(jì)產(chǎn)生的主要文件就是軟件詳細(xì)設(shè)計(jì)文檔。此外,軟件詳細(xì)設(shè)計(jì)文檔一般來源于軟件架構(gòu)設(shè)計(jì)的進(jìn)一步分析。在軟件架構(gòu)設(shè)計(jì)活動中,設(shè)計(jì)了軟件組件和組件間接口。軟件詳細(xì)設(shè)計(jì)則是對軟件組件的進(jìn)一步分解和設(shè)計(jì),一般包含三個方面:軟件單元,軟件單元的內(nèi)部邏輯和軟件單元間的交互邏輯。圖4軟件詳細(xì)文設(shè)計(jì)文檔包含的內(nèi)容詳細(xì)設(shè)計(jì)文檔基本內(nèi)容由于自然語言不具有單義性,所以要進(jìn)行無歧義的描述軟件過程單元細(xì)節(jié),就必須使用一些特定的設(shè)計(jì)描述方法。詳細(xì)設(shè)計(jì)采用的方法一般有程序流程圖、HIPO(HierarchyplusInputProcessOutput)圖、N-S圖等,還有其他描述說明形式(如圖5)。使用這些方法就是來規(guī)范和輔助說明算法、數(shù)據(jù)結(jié)構(gòu)和接口相關(guān)細(xì)節(jié)的。這些細(xì)節(jié)涵蓋了數(shù)據(jù)結(jié)構(gòu)定義,全局變量和宏定義描述,動態(tài)行為描述(比如任務(wù),中斷和需求方案分析等),每個函數(shù)的設(shè)計(jì)(比如輸入、輸出、流程圖、偽代碼等)等。圖5軟件詳細(xì)設(shè)計(jì)文檔包含了GetStopSigLevel函數(shù)的定義HOW:(軟件詳細(xì)設(shè)計(jì)文檔在VectorCAST/C++工具中的應(yīng)用)為測試用例的數(shù)據(jù)提供依據(jù)圖6單元需求文檔csv文件?Key:FR6?ID:FR6?Module:requirement3?TitleDescription:"Thesignallight_intensityshallbeaninputtolightscontrol.Itsvalueshallrangefrom0to100."KeyIDModuleTitleDescriptionFR6FR6requirement3"Thesignallight_intensityshallbeaninputtolightscontrol.Itsvalueshallrangefrom0to100."圖7需求文檔csv文件中的某條需求如上圖標(biāo)黃區(qū)域,說明了“l(fā)ight_intensity”變量變化范圍是0~100。所以根據(jù)這條詳細(xì)設(shè)計(jì)文檔說明,就可以正確編寫測試用例,并保證了測試用例數(shù)據(jù)是有實(shí)際意義的,避免像“l(fā)ight_intensity=120”等這樣無意義的賦值。圖8具有意義的測試用例并通過圖9無意義的測試用例并失敗VectorCAST/C++工具RGW功能圖10通過工具實(shí)現(xiàn)軟件單元需求與測試用例關(guān)聯(lián)VectorCAST/C++提供一個RGW(RequirementsGateway)功能。VectorCAST/C++支持與一些需求管理系統(tǒng)Polarion、DOORS、RequisitePro等進(jìn)行集成,同時支持需求管理系統(tǒng)導(dǎo)出的CSV等格式文件。對于經(jīng)過軟件詳細(xì)設(shè)計(jì)文檔印證的需求文檔,我們可以按照這些結(jié)構(gòu)文件編寫,使需求文檔契合VectorCAST/C++工具,使用該功能??梢詫?shí)現(xiàn)軟件單元需求、測試用例和代碼覆蓋率之間的可追溯性,并允許將單元需求導(dǎo)入,映射到測試用例。這樣可以幫助測試人員,當(dāng)需求發(fā)生更新或迭代時,能夠快速更新測試用例或編寫測試用例,提高工作效率。所以軟件詳細(xì)設(shè)計(jì)文檔,在很大程度上為項(xiàng)目團(tuán)隊(duì)提升了測試效率、提升工作的自動化率。批量生成測試用例對于那些詳細(xì)設(shè)計(jì)文檔里的某些函數(shù),若具有一般數(shù)學(xué)表達(dá)式的功能的函數(shù)且我們可以事先確定好它的輸入與輸出的,可以通過VectorCAST/C++工具提供的CSVMapping功能來批量構(gòu)建測試用例。圖11包含測試所需數(shù)據(jù)的CSV文件首先我們根據(jù)函數(shù)關(guān)系確定好一系列的輸入值和期望值形成CSV文件,然后將CSV文件加載到工具中,接著確定好數(shù)據(jù)列與測試用例模板里變量的對應(yīng)關(guān)系,最后選擇創(chuàng)建測試用例。通過上面操作我們就會快速生成一系列的測試用例。圖12對應(yīng)測試用例模板變量與CSV文件列的關(guān)系并生成測試用例總結(jié):眾所周知,進(jìn)行單元測試不僅可以盡早地發(fā)現(xiàn)錯誤,還容易發(fā)現(xiàn)深層次問題,并能快速定位問題的來源,針對相關(guān)需求,向開發(fā)人員進(jìn)行反饋,小步快速迭代,高效的實(shí)現(xiàn)正確的需求和代碼。而詳細(xì)設(shè)計(jì)文檔不僅為開發(fā)提供了標(biāo)準(zhǔn),也為后續(xù)的測試提供了參考。通過VectorCAST/C++聯(lián)系實(shí)際問題,能快速的完成動態(tài)單元測試。北匯信息專注于汽車電子測試,提供專業(yè)的汽車電子測試系統(tǒng)搭建及測試咨詢服務(wù);提供完整的汽車新能源測試服務(wù)。當(dāng)然在代碼測試方面,我們也有完整的代碼測試解決方案。VectorCAST/C++作為Vector公司的代碼動態(tài)測試工具,既可以用于手寫代碼,也可以用于自動生成代碼的測試,如模型轉(zhuǎn)代碼的測試。本次為大家簡單介紹了軟件詳
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 殯儀服務(wù)與社區(qū)公益項(xiàng)目合同
- 車輛抵押權(quán)登記及抵押物抵押合同
- 鋼管混凝土拱橋泵送壓力專題研究
- 地磚施工工藝流程
- 【課件】+彈力+-2024-2025學(xué)年人教版(2024)物理八年級下冊+
- 智慧園林云平臺整體解決方案智慧公園整體解決方案
- 2024年電力負(fù)荷控制員(技師)職業(yè)鑒定考試題庫(含答案)
- 非金屬礦業(yè)數(shù)字化轉(zhuǎn)型
- 2024年高考語文備考之教考結(jié)合:新高考現(xiàn)代文閱讀Ⅱ題型
- 華為企業(yè)培訓(xùn)管理
- 兒康家長培訓(xùn)內(nèi)容
- 兒科護(hù)理學(xué)小兒液體療法
- 2024-2030年中國退熱貼行業(yè)競爭格局與前景發(fā)展策略分析報(bào)告
- 2025年中國鐵路廣州局集團(tuán)限公司招聘177名管理單位筆試遴選500模擬題附帶答案詳解
- 霧化吸入療法合理用藥專家共識(2024版)解讀
- 痹癥中醫(yī)護(hù)理方案
- 豬場分場長競聘述職報(bào)告
- 專利技術(shù)交底書
- 大學(xué)生心理健康教育(蘭州大學(xué)版)學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 2024年變電設(shè)備檢修工(高級)技能鑒定理論考試題庫-上(選擇題)
- 林地贈與協(xié)議書(2篇)
評論
0/150
提交評論