侵權(quán)投訴
訂閱
糾錯
加入自媒體

基于模型的測試(壹)

趁著還沒“發(fā)霉”,把以前的知識在總結(jié)總結(jié)。本篇是基于MBD測試系列文章的第一篇,也不知道能寫多少,且寫且看吧。

01概述

在基于模型(MBD)開發(fā)的軟件 中經(jīng)常會涉及到MIL/SIL/PIL和HIL測試。

我們先來熟悉下以上幾個術(shù)語的定義:

MIL- Model In Loop:驗證控制算法模型是否滿足設(shè)計功能需求;

SIL- Software InLoop:在PC上驗證代碼行為是否與模型一致;

PIL- ProcessorIn Loop:在目標處理器上驗證代碼實現(xiàn)的行為是否與模型一致;

HIL- Hardware InLoop:在整車或系統(tǒng)模擬外設(shè)上驗證代碼與控制器是否滿足設(shè)計需求。

MIL就是對軟件模型在模型的開發(fā)環(huán)境下(如Simulink)進行仿真,通過輸入一系列的測試用例,驗證模型是否滿足了設(shè)計的功能需求。除此之外還需要做模型覆蓋率度量:

ConditionCoverage(條件覆蓋)

DecisionCoverage(判定覆蓋)

Switch-caseCoverage(分支覆蓋)

MIL測試結(jié)構(gòu)圖如下圖所示:

1- 針對范圍:單元測試與集成測試;功能模塊和集成模塊;2- 功能:驗證算法模型是否滿足設(shè)計的功能需求。

02MIL 測試過程

MIL測試除建立控制器模型外,還需建立被控對象模型,將控制器和被控對象連接起來進行閉環(huán)測試。但是在不少子模塊中,例如輸出為開關(guān)量或者在輸入確定時輸出是固定值,無需和受控對象一起組成閉環(huán)系統(tǒng)進行測試,而集成的系統(tǒng)則需要受控對象。因此,將 MIL測試分成兩部分:帶受控對象的MIL測試和不帶受控對象的MIL測試。

1- 不帶受控對象的MIL測試:不帶受控對象的MIL測試,設(shè)計人員可以很方便的通過設(shè)定輸入并給出期望的輸出,測試時將模型輸入設(shè)定的輸入值,觀測模型的輸出值是否和期望值保持一致,判定模型是否有效。具體測試過程如下:設(shè)計測試用例設(shè)計功能模型的測試用例。測試用例設(shè)計時應(yīng)遵循以下原則:1)- 確定輸入和輸出,并確定其取值范圍。2)- 按照邊界值和其左右值,中間值的方式進行輸入值的確定,根據(jù)確定的輸入值,給出期望輸出。3)- 包含測試環(huán)境描述和測試步驟。4)- 包含執(zhí)行結(jié)果。5)- 包含判定指標和判定結(jié)果。建立測試環(huán)境將搭好的功能模塊模型建立輸入、輸出環(huán)境,設(shè)定模塊的參數(shù)值。執(zhí)行測試將設(shè)定的輸入值輸入模型,記錄模型執(zhí)行結(jié)果。測試結(jié)果判定結(jié)合判定標準,將執(zhí)行結(jié)果和期望結(jié)果進行對比,滿足判定標準則認為通過,不滿足則未通過。根據(jù)測試結(jié)果,形成測試報告。輸入輸出保存保存MIL在測試過程中的輸入和輸出值,用于后續(xù)的SIL、PIL的測試驗證。2- 不帶受控對象的MIL測試:帶受控對象的MIL測試,一般為子功能模型集成后的模型,實現(xiàn)具體的需求功能。直接受控對象為電機模型,聯(lián)合仿真(如下圖所示),在給定輸入條件的情況下,監(jiān)控輸出信號,判定輸出結(jié)果的正確性。

測試系統(tǒng)模型在整車環(huán)境下的輸出特性時,需要建立整車的模型,因整車模型的特殊性,一般從OEM或者整車模型軟件(CarSim,CarMaker等)中獲取。

帶受控對象的MIL測試流程和不帶受控對象的MIL測試流程基本保持一致。設(shè)計測試用例設(shè)計功能模型的測試用例。測試用例設(shè)計時應(yīng)遵循以下原則:1)確定輸入和運行時間參數(shù),確定輸出范圍。2)包含測試環(huán)境描述和測試步驟。3)包含執(zhí)行結(jié)果。4)包含判定指標和判定結(jié)果。建立測試環(huán)境將搭好的功能模塊模型建立輸入、輸出環(huán)境,設(shè)定模塊的參數(shù)值。執(zhí)行測試將設(shè)定的輸入值和時間輸入模型,記錄模型執(zhí)行結(jié)果。測試結(jié)果判定結(jié)合判定標準,將執(zhí)行結(jié)果和期望結(jié)果進行對比,滿足判定標準則認為通過,不滿足則未通過。根據(jù)測試結(jié)果,形成測試報告。

03總結(jié)

MIL測試主要是驗證模型功能的正確性,是否滿足設(shè)計的功能需求。只有保證了建模的正確性,才能保證在此基礎(chǔ)上生成的代碼的正確。通過MIL測試,指定輸入和期望結(jié)果,將仿真結(jié)果和期望結(jié)果進行比對,根據(jù)判定標準驗證模型是否正確。

聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

文章糾錯
x
*文字標題:
*糾錯內(nèi)容:
聯(lián)系郵箱:
*驗 證 碼:

粵公網(wǎng)安備 44030502002758號