3.3 純軟件方式
純軟件方式基于虛擬軟件測試環境,用軟件方法對嵌入式系統中的硬件環境進行描述,構造出一個可以支持嵌入式軟件運行的虛擬平臺,然后在該虛擬平臺上利用插樁技術獲取測試數據,配合以相應的軟件動態測試手段,來完成對嵌入式軟件的測試。這種測試環境是通過開發處理器、存儲器、常用外圍芯片、I/O、中斷、時鐘等模擬器軟件,在宿主機上構造被測軟件運行所必須的硬件運行環境,實現軟件的測試[3]。純軟件方式的插樁實現過程如圖3所示。

圖3 純軟件方式的插樁實現過程
4邊界掃描技術
邊界掃描技術是一種對在芯片內部設置掃描寄存器,以改變和記錄程序運行狀態的非侵入式的嵌入式測試技術。20 世紀80 年代聯合測試行動組JTAG(Joint Test Action Group)開發了IEEE1149.1-1990邊界掃描測試技術標準[5]。此邊界掃描測試(BST)結構提供了有效地測試引線間隔致密的電路板上零部件的能力,支持板級和芯片級的測試。通過這個標準,可對具有JTAG口芯片的硬件電路進行邊界掃描、數據獲取和故障檢測[2]。通過TI公司提供的JTAG仿真器,可以方便的通過邊界掃描的方式,獲取測試數據并完成測試。JTAG口的引腳定義如下:
TCK——測試時鐘輸入;
TDI——測試數據輸入,數據通過TDI輸入TTAG口,在TCK的上升沿取樣,具有內部上拉;
TDO——測試數據輸出,數據通過TDO從JTAG口輸出,三態,TCK下降沿時改變并被驅動輸出;
TMS——測試模式選擇,TMS用來設置JTAG口處于某種特定的測試模式,在TCK的上升沿取樣,具有內部上拉;
可選引腳TRST——測試復位,輸入引腳,低電平有效。
JT AG接口的典型電路原理圖如圖4所示。

圖4 JT AG接口的典型電路原理圖
利用JTAG接口的虛擬在線調試技術,可以通過JTAG仿真器將芯片運行過程中部分的內部信息傳送到計算機進行分析。數字集成電路芯片的每個引腳都設有一個移位寄存單元,稱為邊界掃描單元(BSC),由所有邊界掃描單元構成邊界掃描寄存器(BSR)。當進行測試或在系統編程而激活設備的掃描邏輯時,數據可以傳送到IC中的輸入引腳,并且可以使用串行接口從IC中讀取輸出引腳狀態,進而實現對芯片輸入/輸出信號的觀察與控制。對于芯片的輸入引腳,可以通過與之相連的邊界掃描寄存器單元把信號(數據)加載到該引腳中去;對于芯片的輸出引腳,也可以通過預置相連的邊界掃描寄存器“捕獲”該引腳上的輸出信號。邊界信號對芯片來說是透明的,正常的運行不會受到任何影響。在宿主機安裝一個JTAG調試軟件,就可以生成和獲取測試數據,進而對嵌入式軟件進行測試。
5虛擬仿真技術
虛擬仿真技術,與純軟件方式的插樁技術相似,基于嵌入式系統硬件環境構造出相應的軟件仿真平臺,包括基于虛擬部件庫構建的虛擬運行平臺、目標文件的靜態分析和加載、測試用例的編輯管理、測試用例的監測和加載、測試信息采集記錄、測試數據獲取等幾個部分,是一種不對代碼進行插樁而通過虛擬測試設備獲取測試數據的一種非侵入式軟件測試技術。圖5是虛擬仿真測試平臺完成測試數據獲取的結構流程圖。

圖5 虛擬仿真測試平臺完成測試數據獲取的結構流程
6結論
結合對嵌入式軟件測試的數據獲取技術的探討,獲取測試數據需要依據目標系統特點以及測試需求來選擇。從測試數據獲取技術的角度可以看到,嵌入式測試技術還需要深入研究:一方面,現有的測試數據獲取技術未能充分利用嵌入式開發環境的資源,影響了嵌入式測試工具和開發環境的一體化集成應用,有待開發一種嵌入式開發測試一體化平臺;另一方面,市場上強烈需要在軟件全生存周期對軟件進行開發、測試以及項目管理,研究全生存周期嵌入式軟件開發、測試及管理平臺是未來發展的重要方向。
文章來源于領測軟件測試網 http://www.kjueaiud.com/