基于路徑覆蓋的嵌入式軟件動態(tài)測試研究
2.3 數(shù)據(jù)處理及分析
目標(biāo)機在真實環(huán)境中運行可執(zhí)行程序,測試用例集T為運行輸入?yún)⒘?,探針采集?shù)據(jù)為運行的輸出參量。探針函數(shù)采集動態(tài)跟蹤測試數(shù)據(jù),傳輸給宿主機測試平臺。宿主機測試平臺對接收到的動態(tài)跟蹤數(shù)據(jù)進行處理,計算出路徑測試覆蓋率,并結(jié)合數(shù)據(jù)處理過程中的測試日志分析出最后的測試報告。
3 測試實例分析
根據(jù)上述的嵌入式軟件動態(tài)測試框架,模擬測試實驗室現(xiàn)行項目208型海區(qū)終端的航標(biāo)數(shù)據(jù)采集模塊。
在編譯器MPLAB IDE 8.63中編寫源代碼,并對源代碼進行規(guī)則檢查。圖2為航標(biāo)數(shù)據(jù)采集模塊的主控程序流程圖,可將其簡化為程序控制流圖。本文引用地址:http://www.ex-cimer.com/article/148015.htm
該航標(biāo)數(shù)據(jù)采集模塊由C語言開發(fā),根據(jù)插樁策略可以計算出插樁探針的位置、個數(shù),構(gòu)造基本路徑和實際程序執(zhí)行路徑,計算路徑測試覆蓋率。部分測試結(jié)果分析如表1所示。
基本路徑測試覆蓋率PCP:
基本路徑測試覆蓋率大小涉及到測試的各個階段,受到各方面因素的影響。比如,在該測試模塊中,Rx_Data_Svr()和AddataConvert()程序中出現(xiàn)了多個判斷語句和多個循環(huán)語句,可能的路徑數(shù)目增長,以致影響路徑覆蓋率。
4 結(jié)語
本文通過研究嵌入式軟件測試的特點和路徑覆蓋測試的相關(guān)理論,給出了嵌入式軟件動態(tài)測試框架方案。并結(jié)合實驗室目前的項目,分析基本路徑測試的各個步驟,得出路徑測試覆蓋率,進而達到測試目的。但是路徑覆蓋測試受多方面因素的影響,尤其是當(dāng)程序中出現(xiàn)多個復(fù)合條件時,會大大的增加可能的路徑數(shù)目,所以接下來的工作是進一步探討插樁策略、測試用例生成等影響路徑覆蓋率的相關(guān)問題。
評論