《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 新品快递 > 基于全数字仿真平台的自动化测试工具 CRESTS/ CodeCAST

基于全数字仿真平台的自动化测试工具 CRESTS/ CodeCAST

2009-11-27
作者:奥吉通

   全數(shù)字仿真運行平臺CRESTS/CodeCAST是能夠滿足模擬或仿真外部硬件行為進行軟件運行和測試需求的工具。該工具運用國際流行的仿真、測試腳本語言來編寫外部硬件邏輯行為所產(chǎn)生外部激勵事件以構(gòu)成嵌入式軟件的外部信號激勵或數(shù)據(jù)輸入,從而滿足軟件在全數(shù)字仿真運行環(huán)境下無須人的干預(yù)而閉環(huán)運行的要求。
     基于嵌入式應(yīng)用的特點,嵌入式軟件全數(shù)字仿真測試支撐平臺CodeCAST要為嵌入式系統(tǒng)提供全數(shù)字仿真測試環(huán)境或測試平臺,實現(xiàn)對嵌入式系統(tǒng)進行實時、閉環(huán)的系統(tǒng)測試。具體地說CodeCAST要為用高級語言(C,ADA等)編寫的嵌入式軟件測試提供了有效的、統(tǒng)一的協(xié)作平臺。在該平臺上完成被測軟件的分析、運行和測試,最重要的是要實現(xiàn)嵌入式系統(tǒng)外部事件的全數(shù)字仿真,使得嵌入式軟件就像在真實硬件環(huán)境下連續(xù)不中斷地運行。

 


     從嵌入式軟件全數(shù)字仿真測試支撐平臺(CodeCAST)總體結(jié)構(gòu)圖我們可以看出,CodeCAST的工作流程是:
     ·  對被測程序進行插樁處理;
     ·  對被測程序進行靜態(tài)分析,生成程序理解數(shù)據(jù)和質(zhì)量度量數(shù)據(jù)
     ·  裝載在開發(fā)環(huán)境中交叉編譯后的被測軟件
     ·  對被測嵌入式軟件程序進行測試
     ·  通過全數(shù)字仿真模擬端口、中斷等外部事件,使被測嵌入式軟件程序能夠“閉環(huán)”運行
     ·  對測試結(jié)果進行分析,生成測試報告
     ·  依據(jù)CodeCAST的工作流程,CodeCAST能夠滿足嵌入式軟件開發(fā)階段的內(nèi)部測試和驗收階段的測試的要求,并能夠為測試方、被測方及上級主管單位提供可以信賴和再現(xiàn)測試過程與測試問題的測試報告。
     主要性能特點
     CodeCAST要為嵌入式軟件提供全數(shù)字仿真測試的支撐平臺,實現(xiàn)對嵌入式系統(tǒng)進行實時的、閉環(huán)的系統(tǒng)測試。具體地說CodeCAST要為用高級語言/匯編語言(包括混合編程)編寫的嵌入式軟件測試提供了有效的、統(tǒng)一的協(xié)作平臺。在該平臺上完成被測軟件的分析、運行、測試,最重要的是要實現(xiàn)嵌入式系統(tǒng)外部事件的全數(shù)字仿真,使得嵌入式軟件就像在真實硬件環(huán)境下能夠連續(xù)不中斷地運行,并進行系統(tǒng)測試。
     建立嵌入式應(yīng)用的核心——CPU的虛擬目標機
     CPU的虛擬目標機實際上就是嵌入式開發(fā)應(yīng)用中大家常用到的CPU模擬器Simulator。由于嵌入式應(yīng)用千差萬別,CPU的種類和型號多種多樣,因此CPU虛擬目標機的實現(xiàn)也是各不相同,但它們的核心內(nèi)容都是相同的。
     CodeCAST虛擬目標機所要完成的任務(wù)有:CPU指令集的解釋、CPU時序的模擬、CPU端口動作的仿真和CPU中斷機制的實現(xiàn)等等。虛擬目標機中對對程序運行性能的計算及時間統(tǒng)計是基于所對應(yīng)CPU的指令周期以及CPU的工作主頻。這是一個相對量,但它能夠指導(dǎo)開發(fā)人員優(yōu)化程序,保證程序的運行性能。而且實際的定時或?qū)崟r設(shè)計就是以它為基礎(chǔ)的。
     程序理解與質(zhì)量分析
     程序理解是測試程序、調(diào)試程序和維護程序的基礎(chǔ),也是程序質(zhì)量度量、評估的基礎(chǔ)。國外最新研究成果表明, 維護和逆向工程工作百分之七十的時間花在對系統(tǒng)的理解上。為了幫助軟件測試人員進行軟件質(zhì)量評測,知道軟件的哪些部分能正常運行, 哪些部分應(yīng)該加以改進, 哪部分應(yīng)該重新實現(xiàn),那些部分要重點測試必須首先研究程序的理解技術(shù)。
     CodeCAST在程序理解方面要做的工作是解決高級語言程序單元之間的調(diào)用關(guān)系、被調(diào)用關(guān)系以及程序單元內(nèi)部的控制流程關(guān)系的表示和圖形顯示。
     軟件質(zhì)量是人們十分關(guān)心的問題,但軟件質(zhì)量的評價十分復(fù)雜。為了準確地評定軟件的質(zhì)量,首先必須對影響軟件質(zhì)量的各個因素進行量化,然后才能通過定性與定量相結(jié)合的方法評價軟件的質(zhì)量。軟件分析主要是為軟件測試人員提供度量被測軟件質(zhì)量的度量數(shù)據(jù)——度量元。
     CodeCAST在軟件質(zhì)量分析方面要做的工作是在國際軟件質(zhì)量標準ISO/IEC 9126和權(quán)威理論(McCabe結(jié)構(gòu)復(fù)雜性度量)基礎(chǔ)上,給出那些嚴重影響程序整體質(zhì)量的度量元。
     軟件測試
     軟件測試是檢驗軟件質(zhì)量,驗證軟件功能、性能及結(jié)構(gòu)正確與否的重要手段。軟件測試涉及到很多測試技術(shù),如結(jié)構(gòu)測試(覆蓋測試或“白盒”測試)、功能測試(“黑盒”測試)、單元測試、集成測試、系統(tǒng)測試以及回歸測試。為完成這些測試類型,需要設(shè)計測試用例,編寫測試腳本。應(yīng)用測試用例和測試腳本進行軟件測試最大的好處是測試結(jié)果可以再現(xiàn),測試自動化和回歸測試能夠得到保證。
     CodeCAST的結(jié)構(gòu)測試(覆蓋測試或“白盒”測試)是被測軟件在CPU虛擬目標機運行環(huán)境下按照測試要求運行完成的。在正式運行前,要對被測軟件在程序理解和分析的基礎(chǔ)上進行插樁。在程序運行以后,就可以給出覆蓋信息。覆蓋測試的結(jié)果可在調(diào)用圖、控制流圖上用醒目的顏色標注,或以統(tǒng)計的數(shù)據(jù)給出。
     CodeCAST的功能測試(“黑盒”測試)是通過特定輸入或輸入序列,檢驗相關(guān)輸出或輸出序列來測試程序處理或程序處理流程的正確性。
     CodeCAST的單元測試是通過配置程序單元的運行環(huán)境或構(gòu)造程序單元運行的驅(qū)動并實際運行該程序單元完成的?;谝唤M正確的程序單元采取自底向上的方法可進行組裝測試或集成測試,最終進行系統(tǒng)測試。
     CodeCAST通過實時獲取或改變虛擬目標機的數(shù)據(jù)和狀態(tài)來支持測試用例或測試腳本的應(yīng)用。CodeCAST支持用國際上流行的高級腳本語言來編寫測試用例或測試腳本。單元測試的測試驅(qū)動也要用腳本語言來編寫。測試的自動化和回歸測試環(huán)境的建立都可用腳本編程來完成。
     全數(shù)字仿真
     嵌入式軟件是通過CPU的各種端口與外部硬件發(fā)生關(guān)聯(lián),全數(shù)字仿真是針對嵌入式軟件而言的。真實CPU端口所對應(yīng)的型號是電信號,嵌入式軟件在端口讀取或輸出的信號則是數(shù)據(jù)信號。因此,通過對端口I/O與中斷事件產(chǎn)生的邏輯編程,就能夠?qū)崿F(xiàn)端口、中斷或外部事件的全數(shù)字仿真。
     CodeCAST提供模擬外部設(shè)備產(chǎn)生外部激勵信號的機制(全數(shù)字仿真),即用腳本語言編寫端口事件、中斷事件以及其它外部事件的邏輯流程。
     總之,全數(shù)字仿真運行平臺CRESTS/CodeCAST能夠滿足軟件仿真運行與測試的要求,方便靈活地仿真外部硬件行為,監(jiān)控程序運行的內(nèi)部狀態(tài),支持軟件的覆蓋測試和功能測試的需求。
     目前,嵌入式軟件全數(shù)字仿真的思想越來越受到人們的重視,其方法和技術(shù)越來越成熟,應(yīng)用領(lǐng)域越來越廣,成功案例越來越多(軍事、國防、交通、電子等有大量的應(yīng)用例子)。特別是仿真和測試腳本語言的出現(xiàn),為人們編寫仿真程序提供了強有力的手段。反過來,腳本語言又很好地促進了全數(shù)字仿真概念的普及和應(yīng)用的推廣。

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。

相關(guān)內(nèi)容