簡介
CodeTEST ——
CodeTEST介紹
CodeTEST是專為嵌入式系統設計的軟體測試工具,CodeTEST為追蹤嵌入式應用程式,分析軟體性能,測試軟體的覆蓋率以及記憶體的動態分配等提供了一套實時線上的高效率解決方案。CodeTEST還可以通過網路遠程檢測被測系統的運行狀態,可以滿足不同類型的測試環境,將給整個開發和測試團隊帶來高品質的測試手段。CodeTEST可以支持幾乎所有的主流的嵌入系統的軟體和硬體平台,可以支持多種CPU類型,和嵌入式作業系統。CodeTEST 可支持幾乎所有的64/32位CPU和部分16位MCU,支持數據採集時鐘頻率高達133MHz。CodeTEST可通過PCI/cPCI/VME匯流排採集測試數據,也可通過MICTOR插頭、飛線等手段對嵌入式系統進行線上測試,無需改動被測系統的設計,CodeTEST與被測系統的連線方式靈活多樣。
功能模組
CodeTEST 系統包括以下四個功能模組:
1. 性能分析:CodeTEST 能夠同時對多達128000個函式進行非採樣性測試,精確計算出每個函式或任務(基於RTOS下)的執行時間或間隔,並能夠列出其最大和最小的執行時間。CodeTEST的性能分析功能也能夠為嵌入式應用程式的最佳化提供依據,使軟體工程師可以有針對性地最佳化某些關鍵性地函式或模組,以及改善整個軟體的總體性能。
2. 覆蓋分析:CodeTEST提供程式總體概況,函式級代碼以及源級覆蓋趨勢等多種模式來觀測軟體的覆蓋情況。CodeTEST覆蓋率信息包括程式實際執行的所有內容,而不是採樣的結果,它以不同顏色區分運行和未運行的代碼,CodeTEST可以跟蹤超過一百萬個分支點,特別適用於測試大型嵌入式軟體。
3. 動態存儲器分配分析:CodeTEST的分析能夠顯示有多少位元組的存儲器被分配給了程式的哪一個函式。CodeTEST可以統計出所有的記憶體的分配情況,指出存儲體分配的錯誤,讓測試者可以同時看到其對應的源程式內容。
4. 追蹤分析:CodeTEST可以按 源程式、控制流 以及 高級模式 來追蹤嵌入式軟體,最大追蹤深度可達150萬條源級程式。其中 高級模式 顯示的是RTOS的事件和函式的進入退出,給測試者一個程式流程的大框圖; 控制流 追蹤增加了可執行函式中每一條分支語句的顯示; 源程式 追蹤則又增加了對被執行的全部語句的顯示。在以上三種模式下,均會顯示詳細的記憶體分配情況,包括在那個代碼檔案的那一行,那一個函式調用了記憶體的分配或釋放函式,被分配的記憶體的大小和指針,被釋放的記憶體的指針,出現的記憶體錯誤。
CodeTEST產品
CodeTEST包括三個產品(分別用於嵌入式軟體系統開發的不同階段的測試):
CodeTEST Native(TM):在主機上完成軟體開發後的測試;
CodeTEST Software-In-Circuit(TM):將軟體植入目標系統通過乙太網連線進行軟體測試;
CodeTEST Hardware-In-Circuit(TM):系統測試,如系統性能、產品質量等,需要軟硬體配合測試。
CodeTEST測試軟體特點:
軟體性能分析,可同時監視32000 函式,1000個任務。
存儲器分配分析,提供存儲器分配分析功能,能夠快速發現存儲器分配時隱含及運行中出現的問題。
代碼覆蓋率測試。
代碼跟蹤,跟蹤緩衝空間達到400K,可跟蹤一百五十萬行原始碼,為大規模軟體系統跟蹤分析提供了簡便高效的途徑。
CodeTEST可同時進行軟體性能、代碼覆蓋率、動態記憶體分配的分析。該工具套件非常適合嵌入式軟體測試,其測試具有很高的可靠性。CodeTEST新推出的VME能幫助軟體開發人員集中精力於軟體代碼設計,不必費神於硬體、目標系統的連線以及測試方案等。CodeTEST-VME測試卡採用VME匯流排連線工業標準,通過匯流排分析器提取目標板的詳細信息,支持所有的CodeTEST功能,支持外界電源,96腳背板連線方式,單槽6U,160MM,乙太網連線,AUI帶適配器方式,板級測試時可支持自檢,可遠程控制。
CodeTEST版本
CodeTEST有三個版本可供選擇,支持的功能不同,可滿足不同套用的需求。
1) CodeTEST Native
在早期的開發階段,採用CodeTEST Native的插樁器可以實現較快的軟體測試和分析。雖然此階段的測試和分析不是實時測試,但這是沒有目標硬體連線時的最好的分析和查找問題的最好方法。採用CodeTEST,可以提高軟體測試的代碼覆蓋率、查找和分析記憶體的泄漏和深度追蹤來確保軟體的正常運行。
2) CodeTEST SWIC (Software in Circuit)
當有硬體連線到測試系統時,我們就可以採用 "target hardware" 工具了。一般說來,在這一階段,邏輯分析儀、仿真器和純軟體工具是用來確定系統是否正常工作,但是採用這些工具測試軟體往往增加了工程師工作的難度和壓力。而採用CodeTEST SWIC,通過目標代理 (tragrt agent) 來測試和分析目標硬體就不需要硬體工具。CodeTEST SWIC插樁器還可以很方便的讓你從CodeTEST Native的desktop-stimulated測試跳轉到目標硬體的實時測試。跳轉後,插樁器、腳本的檔案格式和數據不受Native環境影響。而且,就學習Native和CodeTEST SWIC的測試方法而言是差不多的。對於大多數在這兩種開發階段使用過其他的工具的開發者,CodeTEST可以大大節約開發的時間。雖然CodeTEST SWIC工具不提供外部硬體測試系統的細節情況,但它為硬體的探測的難題提供了解決方案,提供了強大的代碼覆蓋實時工具、記憶體分析和軟體追蹤,而且在真實硬體環境中運行,價格低廉。
3) CodeTEST HWIC (Hardware in Circuit)
當你進入此階段時,你需要一組能提供監視軟體測試深度和精確度的工具鏈。帶有的Bugs和錯誤的程式必須修改、升級或更新。CodeTEST HWIC工具採用外部硬體輔助和相應的通訊系統來實現最大程度的軟體實時測試。與邏輯分析儀和仿真器不同,CodeTEST HWIC具有處理目前複雜嵌入式系統的實時測試的能力。CodeTEST外置探測的硬體系統主要包括控制和數據處理器、大容量記憶體和可程式的升級定時器,因此大型測試的時間精度可在+/-50ns內。CodeTEST HWIC除了提供測試代碼覆蓋率、記憶體分析和追蹤分析,它的精確的實時測試能力還可以幫你查出軟體性能和質量上的問題所在。
其他
支持的CPU: PowerPC,ColdFire,ARM,x86,MIPS,DSP (TI, ADI, Starcore)等。
支持的OS: VxWorks,AE,OSE,QNX,pSOS,Chorus,Linux,Lynux,Win CE等。
支持的匯流排:PCI、cPCI、PMC、VME等。
支持處理器 : 29K, 68K, ARM, Coldfire, H8, i960, MIPS, MPC8xx, PowerPC, SH, SPARC, X86
操作平台 : Windows 95/NT,Unix