chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

PiL測試實(shí)戰(zhàn)(上)| 單元級代碼的PiL測試

北匯信息POLELINK ? 2022-11-22 10:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


作者:酷兔本兔小編:吃不飽
對于嵌入式代碼,為了測試軟件能否在目標(biāo)芯片上實(shí)現(xiàn)預(yù)期的功能,通常需要進(jìn)行PiL測試(Processor-in-the-Loop-Testing)。目前市面上較為常見的嵌入式軟件調(diào)試工具有PLS UDE和LAUTERBACH Trace32等。UDE和Trace32可以很好的完成軟件調(diào)試的工作,當(dāng)然,我們也可以通過將TPT(基于模型的自動化測試工具,可覆蓋MiL到ViL全階段的測試)和這些調(diào)試工具進(jìn)行集成,更高效、快捷的實(shí)施PiL階段的自動化測試。

通過TPT我們可以很方便的實(shí)現(xiàn)MiL/SiL的測試工程在PiL階段的完全復(fù)用。下面,我將以lights_control(車燈控制)模型生成的代碼為例,為大家演示如何基于TPT進(jìn)行單元級代碼的PiL測試。

2d45b574-6857-11ed-b116-dac502259ad0.gif2d58b570-6857-11ed-b116-dac502259ad0.png2d45b574-6857-11ed-b116-dac502259ad0.gif圖1 TPT與調(diào)試器集成
01測試準(zhǔn)備
本次被測代碼是基于模型開發(fā)的單元級軟件,將模型轉(zhuǎn)成代碼后編譯成elf文件刷寫到目標(biāo)板進(jìn)行測試。涉及到的測試環(huán)境及版本信息如下:
①測試工程:MiL階段搭建的單元測試工程(TPT工程可完全復(fù)用)②測試工具:TPT + PLS UDE③調(diào)試器:PLS UAD2Next④目標(biāo)板:Infineon TC233LP其中目標(biāo)板和UAD之間使用JTAG口通訊,UAD和PC端通過USB進(jìn)行連接。2d45b574-6857-11ed-b116-dac502259ad0.gif2d974e7a-6857-11ed-b116-dac502259ad0.png2d45b574-6857-11ed-b116-dac502259ad0.gif圖2 硬件連接

首先我們需要搭建一個可以正常運(yùn)行的UDE工程,以便于后面通過TPT調(diào)用進(jìn)行PiL測試。

2d45b574-6857-11ed-b116-dac502259ad0.gif2eb68348-6857-11ed-b116-dac502259ad0.png
2d45b574-6857-11ed-b116-dac502259ad0.gif圖3 搭建的UDE工程
02配置測試環(huán)境
在PiL測試過程中,TPT需要將測試用例數(shù)據(jù)發(fā)送到UDE,并讀取UDE從目標(biāo)板讀到的輸出信號數(shù)據(jù)進(jìn)行評估。因此,我們需要搭建測試環(huán)境將TPT和UDE鏈接起來。為方便測試環(huán)境的搭建,TPT提供了能滿足各階段測試的測試平臺,這里我們需要配置一個PLS UDE Platform。2d45b574-6857-11ed-b116-dac502259ad0.gif2f0d34f4-6857-11ed-b116-dac502259ad0.png2d45b574-6857-11ed-b116-dac502259ad0.gif圖4 TPT PLS UDE Platform
設(shè)置用例運(yùn)行步長(和MiL保持一致)及用例最大運(yùn)行時(shí)間加載搭建好的UDE工程加載被測的elf文件選擇源代碼所在文件夾設(shè)置斷點(diǎn)設(shè)置信號讀/寫動作03設(shè)置斷點(diǎn)
為方便對代碼中的變量進(jìn)行讀/寫操作,需要在程序中設(shè)置一些斷點(diǎn)。這里我們可以在TPT端直接進(jìn)行斷點(diǎn)的設(shè)置,TPT會將斷點(diǎn)信息發(fā)送至UDE。TPT可以支持諸如普通斷點(diǎn)(指定斷點(diǎn)位置)、條件斷點(diǎn)等類型,并支持多控制器、多核斷點(diǎn)的設(shè)置。

一般來說,我們只需要設(shè)置兩個簡單的斷點(diǎn)即可滿足單元級別軟件的測試。通過指定代碼行,我們定義了如下所示的兩個斷點(diǎn):

①程序入口(step_in):進(jìn)入Step函數(shù)時(shí)的斷點(diǎn),用于Write;②程序出口(step_out):跳出Step函數(shù)時(shí)的斷點(diǎn),用于Read2d45b574-6857-11ed-b116-dac502259ad0.gif2f639970-6857-11ed-b116-dac502259ad0.png2d45b574-6857-11ed-b116-dac502259ad0.gif圖5 設(shè)置斷點(diǎn)

為了讓程序能夠持續(xù)運(yùn)行以便于我們能持續(xù)給入連續(xù)變化的信號,我們需要在TPT中設(shè)置一個斷點(diǎn)的循環(huán),防止程序在斷點(diǎn)的位置停止。

2d45b574-6857-11ed-b116-dac502259ad0.gif308edf80-6857-11ed-b116-dac502259ad0.png
2d45b574-6857-11ed-b116-dac502259ad0.gif圖6 斷點(diǎn)循環(huán)過程


2d45b574-6857-11ed-b116-dac502259ad0.gif30b5e922-6857-11ed-b116-dac502259ad0.png
2d45b574-6857-11ed-b116-dac502259ad0.gif圖7 TPT中設(shè)置斷點(diǎn)循環(huán)動作

04設(shè)置信號讀/寫動作
設(shè)置好斷點(diǎn)之后,我們需要在TPT中設(shè)置輸入/輸出信號的動作。這里我們在斷點(diǎn)step_in的位置把輸入信號設(shè)置為write,在斷點(diǎn)step_out的位置把輸出信號設(shè)置為read。設(shè)置好后,TPT即可把測試用例信息在斷點(diǎn)step_in灌入目標(biāo)板,當(dāng)step函數(shù)運(yùn)行完成后在斷點(diǎn)step_out把輸出信號回采進(jìn)行評估。2d45b574-6857-11ed-b116-dac502259ad0.gif30e1a4d6-6857-11ed-b116-dac502259ad0.png2d45b574-6857-11ed-b116-dac502259ad0.gif圖8 TPT中設(shè)置信號動作
05MiL/SiL測試工程的快速復(fù)用

由于我們在MiL/SiL階段已經(jīng)完成了對測試工程的搭建,得益于TPT提供的信號mapping的功能,我們只需要對信號做簡單的mapping即可實(shí)現(xiàn)測試工程的完全復(fù)用。

2d45b574-6857-11ed-b116-dac502259ad0.gif30fe728c-6857-11ed-b116-dac502259ad0.png
2d45b574-6857-11ed-b116-dac502259ad0.gif圖9 TPT中信號mapping

做完這些配置工作之后,我們即可運(yùn)行測試工程,完成PiL測試,并生成相應(yīng)的PiL測試報(bào)告。

2d45b574-6857-11ed-b116-dac502259ad0.gif3142d4fe-6857-11ed-b116-dac502259ad0.png2d45b574-6857-11ed-b116-dac502259ad0.gif圖10 測試執(zhí)行
通過對該單元級代碼的測試,不難發(fā)現(xiàn),TPT在實(shí)現(xiàn)不同測試階段的測試工程復(fù)用方面有著巨大的優(yōu)勢——單元級軟件測試可實(shí)現(xiàn)同一測試工程覆蓋MiL/SiL/PiL所有階段,這無疑大大降低了我們的測試成本和周期。并且TPT在復(fù)雜測試用例信號編寫、復(fù)雜場景評估、創(chuàng)建回歸測試、實(shí)現(xiàn)自動化測試等方面都有著很大的優(yōu)勢。敬請期待下篇:帶有Plant Model的PiL測試該如何做?

316e2280-6857-11ed-b116-dac502259ad0.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 測試
    +關(guān)注

    關(guān)注

    9

    文章

    6369

    瀏覽量

    131634
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    前端的單元測試

    https://www.bilibili.com/opus/1178756596191199237 從入門到會寫:前端單元測試最佳學(xué)習(xí)路徑 在當(dāng)今的互聯(lián)網(wǎng)開發(fā)江湖中,前端技術(shù)棧的更新迭代速度令人咋舌
    的頭像 發(fā)表于 03-19 16:05 ?412次閱讀

    半導(dǎo)體嵌入式單元測試的核心技術(shù)、工具選型與落地全流程

    是日本GAIOTECHNOLOGY公司專為嵌入式系統(tǒng)開發(fā)的自動化單元測試工具,它在傳統(tǒng)測試工具的基礎(chǔ)實(shí)現(xiàn)了多項(xiàng)核心技術(shù)突破,解決了半導(dǎo)體嵌入式軟件測試中的諸多痛點(diǎn)。2.1.1 目標(biāo)
    發(fā)表于 03-06 14:55

    還在手寫C++測試用例? Parasoft白盒AI正在接管代碼安全

    當(dāng)汽車自動駕駛代碼突破千萬行,當(dāng)工業(yè)控制軟件要求達(dá)到ASIL D功能安全等級,傳統(tǒng)的手工單元測試就像是用冷兵器對抗裝甲車。2026年,隨著AI智能體全面進(jìn)入研發(fā)全流程,測試的左移已不再是“移”,而是
    的頭像 發(fā)表于 03-06 10:46 ?264次閱讀
    還在手寫C++<b class='flag-5'>測試</b>用例? Parasoft白盒<b class='flag-5'>級</b>AI正在接管<b class='flag-5'>代碼</b>安全

    C語言單元測試在嵌入式軟件開發(fā)中的作用及專業(yè)工具的應(yīng)用

    平臺和操作系統(tǒng)運(yùn)行,無需進(jìn)行大量的修改 二、C語言單元測試在嵌入式開發(fā)中的關(guān)鍵作用 嵌入式系統(tǒng)對實(shí)時(shí)性和可靠性要求極高,單元測試是確保代碼質(zhì)量的關(guān)鍵手段。
    發(fā)表于 12-18 11:46

    肖克利 | 極端環(huán)境測試,讓驗(yàn)證與實(shí)戰(zhàn)同頻!

    直擊新能源車企核心痛點(diǎn)極端環(huán)境測試,讓驗(yàn)證與實(shí)戰(zhàn)同頻新能源汽車測試標(biāo)準(zhǔn)正加速升級,極端環(huán)境驗(yàn)證已成核心競爭力。肖克利高低溫試驗(yàn)箱以實(shí)戰(zhàn)測試
    的頭像 發(fā)表于 12-05 12:04 ?1497次閱讀
    肖克利 | 極端環(huán)境<b class='flag-5'>測試</b>,讓驗(yàn)證與<b class='flag-5'>實(shí)戰(zhàn)</b>同頻!

    嵌入軟件單元測試的全面研究與實(shí)踐

    作為軟件開發(fā)過程中最早進(jìn)行的測試活動,能夠有效隔離代碼片段,驗(yàn)證其功能是否符合設(shè)計(jì)預(yù)期,從而在早期階段發(fā)現(xiàn)潛在缺陷,提升代碼質(zhì)量。本文將系統(tǒng)探討嵌入軟件單元測試的標(biāo)準(zhǔn)流程、方法論、工具
    的頭像 發(fā)表于 12-01 14:31 ?835次閱讀

    測試小白3分鐘上手,零代碼自動化測試平臺,15分鐘搭建自動化測試方案

    還在為不懂代碼、搭建測試方案耗時(shí)久而發(fā)愁?ATECLOUD 零代碼自動化測試平臺,專為自動化測試量身打造,小白3 分鐘就能輕松上手,15 分
    的頭像 發(fā)表于 09-22 17:52 ?987次閱讀
    <b class='flag-5'>測試</b>小白3分鐘上手,零<b class='flag-5'>代碼</b>自動化<b class='flag-5'>測試</b>平臺,15分鐘搭建自動化<b class='flag-5'>測試</b>方案

    邊聊安全 | 軟件單元測試的設(shè)計(jì)方法

    上海磐時(shí)PANSHI“磐時(shí),做汽車企業(yè)的安全智庫”軟件單元測試的設(shè)計(jì)方法寫在前面:軟件單元測試的設(shè)計(jì)是一個系統(tǒng)化的過程,旨在驗(yàn)證代碼的最小可測試部分(通常是函數(shù)或方法)是否按預(yù)期工作。
    的頭像 發(fā)表于 09-05 16:18 ?8665次閱讀
    邊聊安全 | 軟件<b class='flag-5'>單元測試</b>的設(shè)計(jì)方法

    HarmonyOSAI編程單元測試用例

    根據(jù)選中的ArkTS方法名稱,CodeGenie支持自動生成對應(yīng)單元測試用例,提升測試覆蓋率。 在ArkTS文檔中,光標(biāo)放置于方法名稱或框選完整的待測試方法
    發(fā)表于 08-27 14:33

    迅為RK3568開發(fā)板模型推理測試實(shí)戰(zhàn)LPRNet?車牌識別

    迅為RK3568開發(fā)板模型推理測試實(shí)戰(zhàn)LPRNet 車牌識別
    的頭像 發(fā)表于 08-25 14:55 ?1532次閱讀
    迅為RK3568開發(fā)板模型推理<b class='flag-5'>測試</b><b class='flag-5'>實(shí)戰(zhàn)</b>LPRNet?車牌識別

    HarmonyOS AI輔助編程工具(CodeGenie)代碼測試

    放置于方法名稱或框選完整的待測試方法代碼塊,右鍵選擇CodeGenie > Generate UT,開始生成單元測試用例。 說明 最多支持解讀20000字符以內(nèi)的
    發(fā)表于 07-14 17:33

    如何測試半導(dǎo)體參數(shù)?

    半導(dǎo)體參數(shù)測試需結(jié)合器件類型及應(yīng)用場景選擇相應(yīng)方法,核心測試技術(shù)及流程如下: ? 一、基礎(chǔ)電學(xué)參數(shù)測試 ? ? 電流-電壓(IV)測試 ? ? 設(shè)備 ?:源測量
    的頭像 發(fā)表于 06-27 13:27 ?1822次閱讀
    如何<b class='flag-5'>測試</b>半導(dǎo)體參數(shù)?

    老文章新視角:從靜態(tài)測試到CI/CT生態(tài)的進(jìn)化

    的生態(tài)系統(tǒng),而以PiL/HiL為核心的持續(xù)測試(CT)是這一生態(tài)的底層支柱。這一進(jìn)化不僅需要工具供應(yīng)商的開放協(xié)作,更需要主機(jī)廠與Tier1重構(gòu)研發(fā)流程,將CI/CT從“
    的頭像 發(fā)表于 05-26 10:50 ?1761次閱讀
    老文章新視角:從靜態(tài)<b class='flag-5'>測試</b>到CI/CT生態(tài)的進(jìn)化

    新能源車軟件單元測試深度解析:自動駕駛系統(tǒng)視角

    )的雙重標(biāo)準(zhǔn)。以制動控制模塊為例,其單元測試需實(shí)現(xiàn): ? ASIL等級分解: ?將系統(tǒng)需求拆解到軟件單元,確保每個模塊的故障覆蓋率達(dá)標(biāo)。 ? SOTIF場景庫: ?構(gòu)建包含數(shù)萬個長尾場景(如突然闖入的動物
    發(fā)表于 05-12 15:59

    新能源車背后的隱形守護(hù)者:軟件單元測試的生死較量?

    。這個教科書的避讓動作背后,是超過8000萬行代碼的精密協(xié)作,而確保這些代碼絕對可靠的秘密武器,正是我們今天要揭秘的軟件單元測試。 ?一、代碼
    的頭像 發(fā)表于 05-12 11:00 ?696次閱讀