基于路徑覆蓋的嵌入式軟件動態測試研究
2.3 數據處理及分析
目標機在真實環境中運行可執行程序,測試用例集T為運行輸入參量,探針采集數據為運行的輸出參量。探針函數采集動態跟蹤測試數據,傳輸給宿主機測試平臺。宿主機測試平臺對接收到的動態跟蹤數據進行處理,計算出路徑測試覆蓋率,并結合數據處理過程中的測試日志分析出最后的測試報告。
3 測試實例分析
根據上述的嵌入式軟件動態測試框架,模擬測試實驗室現行項目208型海區終端的航標數據采集模塊。
在編譯器MPLAB IDE 8.63中編寫源代碼,并對源代碼進行規則檢查。圖2為航標數據采集模塊的主控程序流程圖,可將其簡化為程序控制流圖。本文引用地址:http://cqxgywz.com/article/148015.htm

該航標數據采集模塊由C語言開發,根據插樁策略可以計算出插樁探針的位置、個數,構造基本路徑和實際程序執行路徑,計算路徑測試覆蓋率。部分測試結果分析如表1所示。

基本路徑測試覆蓋率PCP:
![]()
基本路徑測試覆蓋率大小涉及到測試的各個階段,受到各方面因素的影響。比如,在該測試模塊中,Rx_Data_Svr()和AddataConvert()程序中出現了多個判斷語句和多個循環語句,可能的路徑數目增長,以致影響路徑覆蓋率。
4 結語
本文通過研究嵌入式軟件測試的特點和路徑覆蓋測試的相關理論,給出了嵌入式軟件動態測試框架方案。并結合實驗室目前的項目,分析基本路徑測試的各個步驟,得出路徑測試覆蓋率,進而達到測試目的。但是路徑覆蓋測試受多方面因素的影響,尤其是當程序中出現多個復合條件時,會大大的增加可能的路徑數目,所以接下來的工作是進一步探討插樁策略、測試用例生成等影響路徑覆蓋率的相關問題。







評論