Simulink模型如何做單元測試
參考連結:
>>slvnmakeharness(‘model_name’)
注1:slvnvmakeharness(‘model_name’)其中的model_name指的是simulink模型檔案的名稱,非模型中某個模組的名稱。
注2:輸入命令slvnvmakeharness(‘model_name’)時需要將model_name檔案開啟。
注3:需要建立test harness的模型必須滿足:compile無報錯,即點選“run”,simulink右下角會出現“compiling”進度。當compile完成,如果沒彈出錯誤框或者matlab工作視窗中沒有提示錯誤,則表示compile成功。(1、被測模型必須為“輸入+模型+輸出”形式,其中輸入為input,輸出為output,不能為from或者goto模組;)
注4:被測模型中不能有enable or trigger模組。
注5:如果模型中有Z-1形式的delay模組(或者離散時間模組),一定要將simulink配置中的solver option設定為固定步長,否則compile會報錯誤。(solver配置為discrete?)
注6:被測模型的輸入、輸出必須為一一對應input、output,不能出現用BusSelector或者Bus Creator。
注7:出現數據型別衝突的時候,加入convert(後繼承)以匹配前後量的資料型別。
- 擴充套件測試用例
>>loggedSignals = sldvlogsignals('model_name_harness')
>>save extraTestCases.mat loggedSignals
- 生成測試用例
進入被測模型介面,頁面選單進入analysisàdesign verifieràoptions
Model coverage objectives可選
載入儲存的mat檔案:extraTestCases.mat
回到Design Verifier主介面,生成用例
生成介面
Q:生成的test harness儲存的路徑