在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

評估篇 | 單元測試評估也能復用到集成測試?腳本幫你高效評估!

北匯信息POLELINK ? 2022-12-09 11:16 ? 次閱讀


作者:fox

小編:吃不飽


上次我們分享了單元測試用例的復用,單元測試的用例可以復用到集成測試,那單元測試的評估是否也可以復用到集成測試?答案是可以的。


TPT中提供了多種多樣的評估方式,其中的腳本評估使我們復用測試評估成為可能。腳本評估,使用的是基于Python的類Python語言,能夠實現篩選評估區間,評估輸出,報告定制化等功能,是一種非常靈活,使用起來十分方便的評估方式。

通過腳本評估,在某些模型測試中,我們可以將單元測試的評估,也復用到集成測試中。


01

應用場景一:單元測試的測試評估復用到集成測試


針對上次用例篇中的demo模型,我們可以在單元測試時就使用腳本評估來評估整個模型,這里以Cruise Control介紹使用腳本評估來評估計算模塊的方法。


一般情況下,對于計算模塊我們使用定值來測試評估,為了保證測試的充分性,需要若干組數據,這會導致我們需要多次重復計算過程來得到預期的輸出,以完成評估。這是我們在測試計算模塊時的痛點,有沒有可能通過一些方法來自動化這部分重復的過程?答案是有的!通過腳本評估,我們可以將需求中的計算邏輯復現,以此來實現計算模塊的自動化評估。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

9ef6ef9e-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖1 集成級模型


1.聲明評估變量

在腳本評估中聲明需要的評估變量,將部分中間計算量賦值給這些評估變量,以方便在后續計算中使用。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

9f1c5900-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖2 在腳本評估中聲明評估變量


2.復現計算邏輯

TPT的腳本評估中內置了很多計算函數,也支持Python基本庫中的數學函數,方便我們去復現整個計算邏輯。通過模型中的計算邏輯,使用腳本復現其計算過程。這里以其中一部分邏輯舉例介紹,

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

9f4d1bda-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖3 模型計算邏輯及TPT中復現的邏輯


3.評估

使用一個CruiseControl_output的評估變量,將TPT計算出的Cruise Control單元的理論輸出值賦值給CruiseControl_output。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

9f7a8cfa-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖4 模型理論輸出值賦值給CruiseControl_output


4.對輸出進行驗證

在最后使用TPT.assertAlways和TPT.hose兩個函數的組合來實現驗證模型實際輸出是否和理論輸出值相等,這樣就能檢查模型實際輸出和需求是否一致,并且能夠評估輸入的所有組合。兩個函數中前者檢查表達式的返回值是否為真,后者檢查目標信號和參考信號的值是否一致,若一致則返回值為0。所以使用TPT.assertAlways檢查TPT.hose的返回值等于0,即可證明模型輸出值和理論輸出值相等。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

9fb59430-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖5評估輸出


5.將單元測試的評估復用到集成測試

應用上面的方法,將Vehicle這個單元也使用腳本進行評估。這樣在進行集成測試時,單元測試階段的eng_torque將變成Local量。可以將CruiseControl的腳本評估和Vehicle的腳本評估使用這樣的語句進行拼接,即可將單元測試的測試評估,復用集成測試。

1)將兩個單元的腳本評估復制到集成測試的工程中。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

9fdd0196-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖6 將單元測試的腳本評估賦值到集成測試的工程


2)將CruiseControl腳本中的評估輸出eng_torque的語句注釋掉,因為此時該信號變成了Local。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a014d300-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖7 注釋CruiseControl中的相關語句


3)對于Vehicle單元,輸入信號eng_trq變成Local量,是由Cruise Control單元計算得到的。所以在Vehicle的腳本中,將CruiseControl腳本中計算出的eng_torque的值賦值給eng_trq,即可將兩部分腳本評估拼接,完成評估的復用。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a0426e64-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖8傳遞參數


4)運行測試用例得到測試結果。從下圖中可以看到用例時間為10s,評估區間也是10s且測試通過。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a0689670-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖9 集成測試用例的測試結果



02

應用場景二 自定義腳本庫


TPT的腳本評估不僅提供了非常多方便我們評估的內置函數,還支持自定義函數庫,方便我們自已定義一些個性化的評估函數。這里以飽和模塊為例,簡述TPT是如何自定義函數庫的。


1.編寫自定義函數

首先在一個新建的腳本評估中編寫我們要定義的函數(主要是方便控制縮進),TPT腳本評估的語法和Python大體類似。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a0950b4c-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖10 編寫好自定義函數


2.保存文件并修改文件格式

新建txt文本,將編寫好的自定義函數復制到該文件中保存,將文件后綴名修改為.tptpy。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a0cea672-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖11 保存自定義函數文件


3.在TPT中加載函數庫

1)在Preference/General/Assessment Library中添加自定義函數文件的路徑。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a0fbd958-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖12在Preference/General/Assessment Library添加自定義函數路徑


2)在工程的Assessment Library中激活函數庫。這樣就可以在工程中使用我們剛剛編輯好的函數庫中的函數了。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a12e4564-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖13 在工程Assessment Library中激活函數庫


3)在腳本評估中使用“自定義函數的文件名+.+函數名稱”的語法即可調用剛剛自定義好的函數。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a1660436-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖14 在腳本評估中是自定義函數


4)使用示例。

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

a18e3bd6-7743-11ed-b116-dac502259ad0.png

9ee95f8c-7743-11ed-b116-dac502259ad0.gif

圖15 使用示例及結果

03

總結


本文主要介紹了測試評估從單元測試復用到集成測試和自定義腳本庫,這兩者同樣能幫助我們提升測試時的效率。通過用例復用和評估復用不難發現,TPT在做模型測試時具備巨大的優勢,可以通過多種方式提高測試的速度和效率,減少重復的工作。并且TPT支持測試的多個階段——MiL,SiL,PiL等,能夠將同一工程復用到不同的測試階段,這同樣也能提高我們測試的效率!感興趣的小伙伴快動起來吧!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 集成測試
    +關注

    關注

    0

    文章

    26

    瀏覽量

    8363
收藏 人收藏

    評論

    相關推薦

    關于低功耗藍牙連接功耗的評估

    關于低功耗藍牙連接狀態下的功耗評估,推薦一個好用的工具: 對于做低功耗藍牙開發的小伙伴來說,功耗的評估測試是繞不開的一個環節,如何快速的評估自己所選用的方案平臺,功耗是否能夠滿足要
    發表于 04-26 17:10

    LM-80測試評估LED燈具的壽命與性能

    LM80測試簡介LM80測試是由北美照明工程協會(IESNA)與美國國家標準學會(ANSI)聯合發布的權威標準,主要用于評估LED器件的流明維持率和顏色維持性能。這一標準為LED產品的壽命和性能
    的頭像 發表于 03-27 10:26 ?281次閱讀
    LM-80<b class='flag-5'>測試</b>:<b class='flag-5'>評估</b>LED燈具的壽命與性能

    嵌入式軟件單元測試的必要性、核心方法及工具深度解析

    一、為什么嵌入式軟件必須重視單元測試? ?嵌入式系統的特殊性? 在汽車 ECU、醫療設備控制器等場景中,軟件直接操控硬件,?單比特錯誤可能導致剎車失靈或呼吸機故障?。不同于 PC?軟件可頻繁熱更新
    的頭像 發表于 03-21 14:53 ?271次閱讀

    應對海量數據挑戰,如何基于Euro NCAP標準開展高效智駕測試評估

    自動駕駛技術快速發展,海量數據和復雜場景帶來性能與安全評估挑戰。如何高效管理數據、挖掘關鍵場景并滿足以Euro NCAP為代表的嚴格評估標準,成為行業核心問題。本文探討如何應對挑戰,并分享提高場景
    的頭像 發表于 02-12 10:09 ?3893次閱讀
    應對海量數據挑戰,如何基于Euro NCAP標準開展<b class='flag-5'>高效</b>智駕<b class='flag-5'>測試</b>與<b class='flag-5'>評估</b>?

    MPU的性能評估方法

    MPU(Microprocessor Unit,微處理器單元)的性能評估是確保其在實際應用中能夠滿足需求的重要環節。以下是一些常用的MPU性能評估方法: 一、基準測試(Benchmar
    的頭像 發表于 01-08 09:39 ?505次閱讀

    光伏逆變器負載何進行負載測試和性能評估

    光伏逆變器是光伏發電系統的關鍵設備,它將太陽電池板產生的直流電轉換為交流電,供給電網或用戶使用。為了保證光伏逆變器的正常運行和提高其性能,需要進行負載測試和性能評估。以下是進行負載測試
    發表于 12-12 09:44

    ADS54j54評估測試時,會報錯writer register operation failed的原因?

    operation failed。如果不連接評估板,此時固件正常加載進去,且右下角有具體type。但是之前用的v4.8版本的HSDC軟件可以正常,這次用的v5.0,之前的版本刪了,官網沒找到之前
    發表于 12-04 08:07

    汽車軟件單元測試的重要性

    測試不充分密切相關,這引發了社會各界對汽車軟件健壯性的重要性進行深入思考。本文將探討汽車軟件的測試,尤其是單元測試的重要性,以及WinAMS單元測試工具在這一過程中的關鍵作用。 一、
    的頭像 發表于 11-29 10:57 ?395次閱讀

    嚴格的單元測試造就完美的軟件

    關鍵系統時,更是對軟件質量提出了極高的要求。而單元測試作為軟件開發過程中的核心環節,其重要性不言而喻。 單元測試的作用 單元測試是指對軟件中的最小可測試
    的頭像 發表于 11-26 13:22 ?397次閱讀

    多通道負載測試和性能評估

    性能評估則可以幫助我們了解系統的性能狀況,以及系統在何種條件下可以達到最優的性能。通過多通道負載測試和性能評估,我們可以有效地提高系統的性能,提高用戶的滿意度。 然而,多通道負載測試
    發表于 11-11 16:44

    如何評估智能系統的性能

    評估智能系統的性能是一個復雜而多維的任務,它涉及多個方面和指標。以下是一些關鍵的評估方法和策略: 一、功能測試 功能測試評估智能系統是否按
    的頭像 發表于 10-29 09:49 ?819次閱讀

    如何評估AI大模型的效果

    評估AI大模型的效果是一個復雜且多維度的過程,涉及多個方面的考量。以下是一些關鍵的評估方法和步驟: 一、基準測試(Benchmarking) 使用標準數據集和任務來評估模型的性能,如G
    的頭像 發表于 10-23 15:21 ?2497次閱讀

    3568F-評估測試手冊(ARM端)

    Cortex-A55處理器 + 紫光同創Logos-2 PG2L50H/PG2L100H FPGA設計的異構多核國產工業評估板,由核心板和評估底板組成,ARM Cortex-A55處理單元主頻高達1.8GHz
    發表于 07-17 11:27

    3562-評估測試手冊

    100%,評估底板大部分元器件亦采用國產工業級方案。核心板經過專業的PCBLayout和高低溫測試驗證,支持選配屏蔽罩,質量穩定可靠,可滿足各種工業應用環境要求。 評估板接口資源豐富,引出4路
    發表于 07-17 10:59

    單元測試集成測試自動化工具

    CoverageMaster winAMS :?適用于嵌入式目標機代碼的單元測試/集成測試工具 全面支持嵌入式微機!驗證嵌入式C/C++軟件 實施以模塊為單位的自動化單元測試工具 不需
    的頭像 發表于 06-26 13:41 ?672次閱讀
    <b class='flag-5'>單元測試</b>、<b class='flag-5'>集成</b><b class='flag-5'>測試</b>自動化工具
    主站蜘蛛池模板: 免费在线看a | 视频一区二区中文字幕 | 亚洲第一成人影院 | 亚洲午夜一区 | 欧美五月| 日韩欧美国产电影 | 乱好看的的激情伦小说 | 日日操夜夜爽 | 中文字幕一区二区三区四区五区 | 欧美一二三区在线 | 国产黄色在线看 | 亚洲午夜一区二区三区 | 第三级视频在线观看 | 日韩毛片网 | 又黄又视频 | xxxx日本老师hd | 91成人在线免费视频 | 色综合成人网 | 717影院理论午夜伦不卡久久 | 亚洲精品日韩专区silk | 天天噜噜日日噜噜久久综合网 | 亚洲精品理论 | 国产高清在线免费 | 天天操天天插天天射 | 中文在线三级中文字幕 | 成人v片| 在线看一区二区 | 555夜色555亚洲夜色 | 国产亚洲综合色就色 | 3344a毛片在线看 | 亚洲性天堂 | 美女被免费网站视频在线 | 欧美性猛 | 天天综合天天操 | 国产视频一二区 | 天堂资源在线最新版 | 欧美成人午夜片一一在线观看 | 被公侵犯肉体中文字幕一区二区 | 激情福利| 四虎综合九九色九九综合色 | 欧美刺激午夜性久久久久久久 |