• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      嵌入式計算機軟件測試關鍵技術研究

      2015-07-13 12:31婁紅
      電腦知識與技術 2015年13期
      關鍵詞:宿主機軟件測試

      婁紅

      摘要:現(xiàn)階段,嵌入式計算機技術不斷得到快速發(fā)展,這在很大程度上促使其在社會生活各個領域內(nèi)的應用也越來越廣泛,且該系統(tǒng)中軟件系統(tǒng)比重及軟件架構呈現(xiàn)越來越復雜的趨勢,引起業(yè)界不斷提升對軟件運行可靠性的高度關注。文章全面闡述了嵌入式計算機軟件測試的基本概念,詳細探討嵌入式計算機軟件測試的關鍵技術,以期能提升嵌入式軟件測試的質(zhì)量及應用性能,從而為軟件測試工作的開展提供一定借鑒和參考價值。

      關鍵詞:嵌入式計算機;軟件測試;宿主機;仿真機;目標機

      中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2015)13-0092-02

      Abstract: In this stage, the embedded computer technology has been rapid development, prompting its application in various fields of social life are increasingly being used to a large extent, and the system software and software architecture presents the proportion the trend to more complex, causing great concern to the industry and improve the operational reliability of the software. Full article describes the basic concepts of embedded computer software testing, detailed discussion of key technologies for embedded computer software testing, with a view to enhance the quality and application performance for embedded software testing, to provide some reference for the development of software testing and the reference value .

      Key words: embedded computer; software testing; host; simulator; target

      現(xiàn)階段,隨著嵌入式計算機技術的不斷革新,其在社會生活各個領域之內(nèi)的應用越來越廣泛,業(yè)界逐漸提升對軟件的質(zhì)量和應用性能的重視,以求其能滿足當前日益增長的軟件測試的需要[1]。軟件質(zhì)量的監(jiān)測是嵌入式軟件測試最主要的工作內(nèi)容,對嵌入式軟件的開發(fā)及應用有著非常重要的作用。

      1 嵌入式軟件測試

      軟件測試是為捕捉代碼中得錯誤而對代碼進行分析或執(zhí)行的過程,這一測試在很大程度上能保證軟件的質(zhì)量及可靠性,為產(chǎn)品設計定型提供一定的依據(jù)[2]。同其他軟件相比,嵌入式軟件有著很強的專用性,強調(diào)必須在需求指定的專用硬件平臺上進行運作。并且,嵌入式軟件在自身的開發(fā)及運行環(huán)境上呈現(xiàn)出獨特的交叉分離特點:通常在宿主機上運動編輯和編譯這些開發(fā)工具,而常見的調(diào)試命令及數(shù)據(jù)傳輸則是建立在主機與下載好軟件的目標機相互聯(lián)立的通訊上。具體交叉開放方式如圖1所示。除此之外,考慮到主機和目標機在操作系統(tǒng)、處理器體系結(jié)構上存在的差異,就在很大程度上賦予嵌入式軟件開發(fā)過程以更為嚴密的復雜性。這里我們所涉及的宿主機主要是指微機、工作站此類的通用性計算機,而目標機的關鍵性作用便是對于嵌入式系統(tǒng)通訊的宿主機進行嚴格意義上的區(qū)分。

      2 嵌入式軟件測試關鍵技術

      2.1 宿主機關鍵技術

      對宿主機的測試通常是通過代碼邏輯測試實現(xiàn)的,宿主機測試的關鍵技術可分為靜態(tài)測試技術和動態(tài)測試技術。

      1)靜態(tài)測試技術

      現(xiàn)階段,最常用的軟件查錯方式仍是人工審議與走查,但基于軟件規(guī)模的日益增大,往往需要大量的工程師人才資源,且源碼在目錄或機器上較為分散,難以進行軟件的審議與走查[3]。針對這一問題,需利用必要手段獲取整個軟件系統(tǒng)框圖,實現(xiàn)相關量的自動化鏈接,在很大程度上為軟件的審議與走查提供較大便利。而利用靜態(tài)測試分析技術能繪制程序邏輯圖及控制流程、獲取完整的軟件系統(tǒng)邏輯框圖、進行程序路徑分析、可互相轉(zhuǎn)換生成的邏輯圖、流程圖、框圖等。以便設計出更為高效的測試用例來提升軟件質(zhì)量及測試覆蓋率。

      2)動態(tài)測試技術

      動態(tài)測試技術的對象和重點是軟件代碼的動態(tài)執(zhí)行能力,全面分析代碼的覆蓋率、內(nèi)存分配使用信息。其中被測軟件的代碼在測試執(zhí)行時出現(xiàn)的執(zhí)行情況便是代碼的覆蓋率,對代碼覆蓋率的監(jiān)控能提升軟件測試的有效性,對測試完成力度進行全面掌控,并能快速識別被遺漏的測試數(shù)據(jù),為測試人員科學掌握并控制測試進程提供數(shù)據(jù)參考。代碼覆蓋率的計算指標包括語句覆蓋、分支/判定覆蓋及MC/DC[4]。而內(nèi)存分配信息則強調(diào)高度關注其中的每一個函數(shù)、內(nèi)存分配點內(nèi)存分配及釋放情況,并及時監(jiān)視動態(tài)內(nèi)存分配中出現(xiàn)的錯誤信息。利用動態(tài)內(nèi)存分配信息,能快速準確掌握內(nèi)存遺漏問題,為內(nèi)存分配優(yōu)化提供策略依據(jù)。

      2.2 仿真機關鍵技術

      作為宿主機與目標機測試的中間性緩解,仿真機能在很大程度上超真實地模擬目標機的功能及性能,從而獲取較目標機更為真實的物理性能測試結(jié)果。測試數(shù)據(jù)獲取技術及仿真技術是仿真機測試的關鍵技術。

      1)測試數(shù)據(jù)獲取技術

      如何利用仿真機獲取測試過程中產(chǎn)生的數(shù)據(jù)是當前嵌入式軟件測試的瓶頸之一,大多嵌入式軟件測試功能都需利用源代碼進行測試,這就需要采取積極有效的方式確保軟件質(zhì)量及性能,以獲取準確的測試數(shù)據(jù)。現(xiàn)階段,常用的測試數(shù)據(jù)獲取方式包括實際物理通道取數(shù)、開發(fā)工具的虛擬IO指數(shù)以及內(nèi)存取數(shù)。其中,實際物理通道取數(shù)是目標機與主機之間物理的具體通信方式,如串口、USB、并口等,利用實際物理通道取數(shù)能在很大程度上直接經(jīng)由數(shù)據(jù)通信軟件實現(xiàn)與主機之間的通訊,并在此基礎上進行必要的測試數(shù)據(jù)上載,開發(fā)工具虛擬IO指數(shù)是一種更為高級的開發(fā)工具,為測試帶來極大便利,如Tornado及TI CCS。假使目標系統(tǒng)沒有上述兩種獲取方法,那么還能夠通過內(nèi)存讀取數(shù)據(jù)的方式直接獲取內(nèi)存取數(shù)。換句話說,是在充分確保足夠緩存的基礎上,加之修改測試工具的庫,在緩存中寫入輸出數(shù)據(jù),測試進行或結(jié)束后,對緩存中記錄的數(shù)據(jù)進行讀取,并在此基礎上以文件的形式保存到主機上。值得關注的是,這樣的方式通常必須在測試前充分確保緩存的大小。但是從適用性上來說,這種方式有著較大的優(yōu)越性,幾乎可以說這種功能充分體現(xiàn)在所有的開發(fā)調(diào)試工具上。

      2)仿真技術

      嵌入式軟件仿真是一種建立在局域網(wǎng)基礎上的數(shù)據(jù)集中性管理、處理系統(tǒng)。其結(jié)構包括實時仿真機、I/O系統(tǒng)、軟件測評控制模板、測試結(jié)果分析工具、總線仿真及總線監(jiān)控模板、實時調(diào)度模板[5]。仿真測評控制技術及仿真技術是仿真測試常見的關鍵性技術。利用必要的仿真測試,能高度真實地模擬現(xiàn)場總線系統(tǒng)上的相關數(shù)據(jù),除此之外,還能按照不同的測試對象,逐個分析研究各種電信號激勵源仿真,但總線除外,從而實時檢測并分析現(xiàn)場總線的運行狀態(tài),實現(xiàn)人機交互界面,控制實時在線測評平臺各設備,完成軟件測評等。

      2.3 目標機關鍵技術

      高度評估系統(tǒng)綜合性能是當前目標機的測試重點,其具體功能是用來評估真實的物理目標機,最大限度對軟件交互、可靠性及穩(wěn)定性進行專門性獲取。從關鍵技術上來說,故障注入、內(nèi)存分析、性能分析為目標機測試常見的三種關鍵技術。其中故障注入技術能便于進行系統(tǒng)邊界測試、容錯性測試、魯棒性測試、強度性測試等。內(nèi)存分析技術主要用來對動態(tài)內(nèi)存分配中存在的缺陷進行處理,當前主要有硬件和軟件這兩種內(nèi)存分析手段。從硬件方面來說,在價格上基于硬件的內(nèi)存分析工具較為昂貴,并且使用范圍有限,僅僅能運作在工具指定的環(huán)境之中。而從軟件方面來說,基于軟件的內(nèi)存分析方式會影響到代碼性能,給實施操作帶來干擾。性能分析技術能為開發(fā)人選擇代碼優(yōu)化范圍提供必要的參考數(shù)據(jù),能準確分析并提供執(zhí)行時間的消耗方式、消耗時間以及每個例程所需要使用的具體時間等,便于開發(fā)人正式?jīng)Q定通過何種方式對軟件進行優(yōu)化,能獲得更高時間性能。此外,性能分析工具還能聯(lián)合調(diào)試工具引導開發(fā)人員及時準確查看那些亟待優(yōu)化的特定函數(shù),能指導開發(fā)人員對系統(tǒng)調(diào)用中錯誤及程序結(jié)構上的缺陷進行必要的探討和分析。

      除此之外,還能在性能測試中,最大限度利用代碼覆蓋分析工具追蹤那些被執(zhí)行過的代碼。測試人員總結(jié)測試結(jié)果數(shù)據(jù),能準確發(fā)現(xiàn)被執(zhí)行過的代碼及被遺漏的代碼。對嵌入式軟件來說,代碼覆蓋分析工具有著對代碼執(zhí)行侵入的可能,會在一定程度上對代碼運行過程產(chǎn)生影響。

      3 結(jié)束語

      當前嵌入式系統(tǒng)應用領域越來越廣泛,其軟件規(guī)模和復雜性日益提升,這就促使各個領域進一步提升對嵌入式系統(tǒng)的質(zhì)量、可靠性、有效性的要求,從客觀上來說,正是這些軟件的質(zhì)量決定了整個產(chǎn)品的質(zhì)量。本文通過對嵌入式計算機軟件測試關鍵技術的深入分析和研究,以期能為嵌入式軟件測試研究和實踐提供一定參考和借鑒作用。

      參考文獻:

      [1] 高賽軍.嵌入式武控計算機軟件測試關鍵技術研究[D].上海:華東理工大學,2013.

      [2] 施小敏.嵌入式IO控制器軟件測試關鍵技術研究[D].上海:上海交通大學,2012.

      [3]平婕,秦軍,康建華,安元偉.嵌入式軟件測試關鍵技術研究[J].有線電視技術,2010(8):45-47,50.

      [4] 周凌云.嵌入式武控計算機軟件測試關鍵技術的研究分析[J].科技展望,2015(4):136.

      [5] 凌楊,邵培南,佟雷,李建軍.基于數(shù)字化仿真環(huán)境的嵌入式軟件測試方法[J].計算機工程,2011(S1):49-51.

      猜你喜歡
      宿主機軟件測試
      IB網(wǎng)上CPU-GPU異構超算平臺容器性能評估及優(yōu)化
      基于OBE的軟件測試課程教學改革探索
      航天軟件測試模型構建與應用
      嵌入式計算機軟件測試關鍵技術研究
      配置和管理Docker容器的網(wǎng)絡連接
      EXCEL和VBA實現(xiàn)軟件測試記錄管理
      虛擬網(wǎng)絡實驗室在農(nóng)村職校計算機網(wǎng)絡技術教學中的應用研究
      關于軟件測試技術應用與發(fā)展趨勢研究
      智能電能表軟件測試技術概述
      《軟件測試》課程教學策略研究
      临沂市| 名山县| 芜湖市| 潜山县| 邯郸县| 南郑县| 石泉县| 淅川县| 邯郸县| 鄂托克前旗| 钟祥市| 项城市| 五常市| 乌拉特后旗| 阿克苏市| 西平县| 方山县| 北碚区| 乌鲁木齐县| 千阳县| 清水河县| 罗平县| 鹿泉市| 新泰市| 宜君县| 咸宁市| 长阳| 伊春市| 来凤县| 皋兰县| 汝州市| 冷水江市| 巴南区| 吕梁市| 四会市| 阳山县| 色达县| 贺州市| 苍山县| 平乡县| 山东省|