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

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

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

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

CANoe編寫CAPL測試腳本的幾點(diǎn)思考

jf_EksNQtU6 ? 來源:汽車通信技術(shù) ? 2024-01-02 10:42 ? 次閱讀

01配置參數(shù)的統(tǒng)一性和便利性

測試腳本的開發(fā)人員,需要考慮到測試執(zhí)行者測試不同控制器時的參數(shù)配置。比如不同的網(wǎng)絡(luò)喚醒條件、不同的網(wǎng)絡(luò)管理消息、不同的時間參數(shù)等等。

編寫的測試腳本給他人使用時,最好是把參數(shù)配置入口放在一個地方,比如專門的參數(shù)配置文件中:

21a0cde6-a7c4-11ee-8b88-92fbcf53809c.png

參數(shù)配置文件

再不濟(jì)可以放在CANoe的系統(tǒng)變量模塊中:

21b41c16-a7c4-11ee-8b88-92fbcf53809c.png

系統(tǒng)變量模塊

不建議放在CAPL代碼中配置測試參數(shù):

21c655d4-a7c4-11ee-8b88-92fbcf53809c.png

CAPL變量模塊

為什么不建議放在CAPL代碼中配置參數(shù)?保證代碼的封閉和穩(wěn)定,以免造成腳本執(zhí)行錯誤。同時也能讓不懂代碼的測試人員執(zhí)行測試。即使腳本開發(fā)人員執(zhí)行測試,在代碼中配置測試參數(shù)也不是一個好的選擇。

02代碼架構(gòu)的重要性

在測試腳本開發(fā)過程中,需要考慮到如何構(gòu)建代碼,尤其是在一個大型的測試腳本中,實(shí)現(xiàn)功能眾多,邏輯復(fù)雜,如果沒有清晰的代碼架構(gòu),不僅會增加大量的冗余代碼,還會造成調(diào)試的難度變大。

比如在每次測試用例執(zhí)行前,需要執(zhí)行測試初始化,初始化需要完成:讀取配置文件參數(shù)、獲取測試執(zhí)行時間、配置測試報告信息等。其中"讀取配置文件參數(shù)"需要獲取多個參數(shù)值,獲取多個參數(shù)值是一個重復(fù)的動作。

獲取多個參數(shù)值可以通過傳入不同的參數(shù)調(diào)用同一個函數(shù)來實(shí)現(xiàn)。然后把獲取多個參數(shù)值的功能用一個函數(shù)封裝,再把這個封裝的函數(shù)在初始化函數(shù)中調(diào)用。

21d85c66-a7c4-11ee-8b88-92fbcf53809c.png

代碼結(jié)構(gòu)

這樣做的好處是當(dāng)你在配置參數(shù)文件中新增參數(shù),CAPL代碼中只需要在ReadIniFile_EthComTest()函數(shù)中調(diào)用ReadParameter(),傳入正確的參數(shù)即可。而且結(jié)構(gòu)化的代碼層次分明、邏輯清楚、調(diào)試失敗時容易定位問題點(diǎn)。

03代碼語法的細(xì)節(jié)化掌握

很多人覺得學(xué)CAPL就是學(xué)CAPL提供的函數(shù)接口,當(dāng)然很多人學(xué)不下去也是因?yàn)镃APL里的函數(shù)太多了,不知道哪個功能應(yīng)該使用哪個函數(shù)。其實(shí)學(xué)習(xí)CAPL編程和其他語言一樣,首先要做的應(yīng)該是打好基礎(chǔ),系統(tǒng)性地學(xué)習(xí)CAPL基本語法,深入了解語法中的細(xì)節(jié)。

下面這個錯誤很多人應(yīng)該遇到過:

21f36dbc-a7c4-11ee-8b88-92fbcf53809c.png

CAPL運(yùn)行錯誤

這種由于沒有考慮到數(shù)組大小而造成內(nèi)存溢出的問題,在CAPL編譯階段是不會出現(xiàn)的。

而像字符串類型的數(shù)據(jù)要如何定義內(nèi)存大小、如何賦值、如何讀取,看似簡單卻是調(diào)試中最容易出問題的。

04注釋說明的必要性

在開發(fā)測試腳本的過程中,需要對代碼進(jìn)行必要的注釋,有利于自己或他人后期維護(hù)。

自定義函數(shù)應(yīng)該描述函數(shù)功能、行參說明、返回值含義等。一些重要的環(huán)節(jié)也應(yīng)該對代碼進(jìn)行單獨(dú)注釋,以幫助后期維護(hù)的邏輯梳理。

222bf15a-a7c4-11ee-8b88-92fbcf53809c.png

注釋說明

05腳本的高可用性

域集中式的整車架構(gòu)中,多種ECU和控制器并存,對測試腳本的可用性帶來挑戰(zhàn)。尤其考慮到整車廠,編寫的測試腳本不能只是一錘子買賣,只能用來測試一個控制器,換一個件就出現(xiàn)各種奇怪的問題,這肯定是不行的!

拿CAN通信測試來說,有的控制器是本地喚醒、有的控制器是遠(yuǎn)程喚醒;有的控制器需要E2E校驗(yàn),有的不需要;有的控制器的DTC是CAN消息觸發(fā),但是以太網(wǎng)通道讀取。要考慮的因素太多,不只是要對整車網(wǎng)絡(luò)架構(gòu)有所了解,對所有控制器功能差異有所掌握,還要思考如何把這些差異做到腳本中,讓同一個腳本能夠跑通所有控制器。

審核編輯:湯梓紅

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

    關(guān)注

    112

    文章

    16402

    瀏覽量

    178590
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4338

    瀏覽量

    62761
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    391

    瀏覽量

    14892
  • CANoe
    +關(guān)注

    關(guān)注

    4

    文章

    66

    瀏覽量

    8672

原文標(biāo)題:CANoe編寫CAPL測試腳本的幾點(diǎn)思考

文章出處:【微信號:談思實(shí)驗(yàn)室,微信公眾號:談思實(shí)驗(yàn)室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    CAPL介紹-腳本編輯和常用基本事件#CANoe#CAPL#腳本

    編程語言
    北匯信息POLELINK
    發(fā)布于 :2023年01月06日 09:06:50

    CANoe:網(wǎng)絡(luò)和ECU開發(fā)、測試和分析的專業(yè)工具

    CANoe的主要應(yīng)用案例之一就是ECU和網(wǎng)絡(luò)測試。例如:驗(yàn)證單個開發(fā)階段,檢查原型,回歸測試和合格測試。為了使得測試任務(wù)簡單易行,
    發(fā)表于 10-09 17:42

    Vector-CANoe 軟件中文資料,CPAL語言,軟件使用方法等

    本帖最后由 追風(fēng)逐浪 于 2019-3-12 14:29 編輯 Vector-CANoe 軟件中文資料,CPAL語言,軟件使用方法等CANoe.LIN基礎(chǔ)培訓(xùn) CANoe快速入門 CAP
    發(fā)表于 03-12 14:20

    Linux命令行與shell腳本編寫

    Linux命令行與shell腳本編寫
    發(fā)表于 01-11 16:50 ?4次下載

    詳細(xì)介紹下如何解析ODX數(shù)據(jù)庫

    針對涉及診斷功能類(如DTC等)測試的項(xiàng)目,實(shí)現(xiàn)過程大致為兩步:先通過CANoe-CAPL完成通用的診斷功能測試腳本的開發(fā);
    的頭像 發(fā)表于 02-17 10:27 ?1189次閱讀

    什么是CAPL編程?

    與Vspy的"C Code Interface"一樣;在CANoe的使用中,一樣提供了我們進(jìn)行二次編程開發(fā)的工具——”CAPL Browser”。
    的頭像 發(fā)表于 06-18 10:13 ?2782次閱讀
    什么是<b class='flag-5'>CAPL</b>編程?

    使用Python訪問CANoe COM接口實(shí)踐

    本文介紹CANoe COM基本構(gòu)成、常用COM對象以及Python腳本調(diào)用CANoe COM的方法。
    的頭像 發(fā)表于 07-27 16:16 ?3311次閱讀
    使用Python訪問<b class='flag-5'>CANoe</b> COM接口實(shí)踐

    淺談CANoe實(shí)現(xiàn)SOA仿真測試

    本文介紹怎么通過我們CANoe工具去實(shí)現(xiàn)SOA的相關(guān)功能。CANoe Communication Setup功能為實(shí)現(xiàn)SOA模型的交互和模型測試提供了全新的接口。用戶可以通過CANoe
    的頭像 發(fā)表于 08-01 14:17 ?1777次閱讀
    淺談<b class='flag-5'>CANoe</b>實(shí)現(xiàn)SOA仿真<b class='flag-5'>測試</b>

    CAPL編程語言快速入門

    CAPL是由Vector公司開發(fā)的類似于C語言的面向過程編程語言,是CANoe和CANalyzer中可用的編程語言。CAPL中程序塊的執(zhí)行由事件控制,在專用的編譯器中開發(fā)和編譯,這樣可以訪問數(shù)據(jù)庫中
    的頭像 發(fā)表于 09-17 16:11 ?2761次閱讀
    <b class='flag-5'>CAPL</b>編程語言快速入門

    新功能發(fā)布 | TSMaster新增CANoe自動化控制模塊,歡迎下載體驗(yàn)!

    前言今天介紹TSMaster的新功能—CANoe自動化模塊。該模塊的功能是通過激勵CANoe內(nèi)部的系統(tǒng)變量,配合運(yùn)行在CANoe中的CAPL腳本
    的頭像 發(fā)表于 12-05 15:18 ?1519次閱讀
    新功能發(fā)布 | TSMaster新增<b class='flag-5'>CANoe</b>自動化控制模塊,歡迎下載體驗(yàn)!

    ?CAPL在診斷中的應(yīng)用,你值得了解!

    作者|胖胖磊小編|吃不飽CANoe主要用于汽車總線的開發(fā)并廣泛被汽車電子工程師們使用。它具有強(qiáng)大的開發(fā)、分析、仿真、診斷、測試等功能。一提到CANoe大家往往都會想到CAPL,在使用
    的頭像 發(fā)表于 09-07 08:27 ?1059次閱讀
    ?<b class='flag-5'>CAPL</b>在診斷中的應(yīng)用,你值得了解!

    編寫一個點(diǎn)名器腳本

    目的:編寫一個腳本,可以將準(zhǔn)別好的名字合集的.txt傳入腳本,然后每次隨機(jī)顯示一個人的姓名
    的頭像 發(fā)表于 11-06 12:41 ?600次閱讀
    <b class='flag-5'>編寫</b>一個點(diǎn)名器<b class='flag-5'>腳本</b>

    Python與CANoe/CANoe4SW

    Python作為功能強(qiáng)大的編程語言,在智能汽車研發(fā)和測試中應(yīng)用廣泛,如數(shù)據(jù)處理、測試自動化、測試腳本開發(fā),甚至直接將Python應(yīng)用運(yùn)行在車輛上。C
    的頭像 發(fā)表于 11-16 08:25 ?2264次閱讀
    Python與<b class='flag-5'>CANoe</b>/<b class='flag-5'>CANoe</b>4SW

    CAPL腳本使用介紹

    CAPL中也有類似于C語言中的回調(diào)函數(shù)的機(jī)制,如檢測報文周期和錯誤幀的函數(shù)中就可以使用,當(dāng)周期超界或者總線出現(xiàn)錯誤幀就會自動調(diào)用回調(diào)函數(shù)執(zhí)行一些操作
    的頭像 發(fā)表于 04-01 11:23 ?2187次閱讀

    Vector推出一套基于Visual Studio Code的免費(fèi)插件

    在汽車軟件開發(fā)過程中,除使用MATLAB開發(fā)算法外,專業(yè)開發(fā)者也偏向使用Visual Studio Code來開發(fā)代碼,其中軟件測試用例的編寫是確保系統(tǒng)穩(wěn)定性和可靠性的重要環(huán)節(jié)。傳統(tǒng)的CAPL
    的頭像 發(fā)表于 11-24 14:15 ?462次閱讀
    Vector推出一套基于Visual Studio Code的免費(fèi)插件
    主站蜘蛛池模板: 国产精品入口免费视频| 国产青草| 色欧美视频| 777奇米影视一区二区三区| 一级毛片真人免费观看| 欧美性精品| 久久天天躁夜夜躁狠狠85麻豆| 97人人干| 午夜高清免费在线观看| 国产精品三级国语在线看| 成人欧美一区二区三区视频 | 色就操| 99久久无色码中文字幕| 最新版天堂资源8网| 天天天天做夜夜夜夜| brazzersvideosex欧美高清| 69pao强力打造免费高速| 手机亚洲第一页| 天天亚洲| 国产免费一区二区三区香蕉精| 欧美极品第一页| 狠狠要| 日本在线色视频| 噜噜色综合| www视频在线观看天堂| 国产精品欧美一区二区| 97干干| 国产资源网| 亚洲一区日本| 亚洲精品欧洲久久婷婷99| 8888奇米四色在线| 国产超爽人人爽人人做| 老司机亚洲精品影院在线| 亚洲嫩草影院在线观看| 日本高清www| 91在线电影| 国产精品午夜久久| 免费观看黄视频网站| 激情九月| 亚洲青草视频| 免费看国产一级特黄aa大片|