色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

VectorCAST在汽車電子C++代碼測試的應用

北匯信息POLELINK ? 2022-09-02 10:16 ? 次閱讀


隨著汽車行業的發展,軟件定義汽車已成為汽車產業達成的共識發展趨勢,軟件在汽車產品中也承擔著越來越重要的角色,車身域各功能的實現,少則幾千行代碼,動輒百萬行代碼。隨著汽車產業功能多樣性以及復雜度的增加,傳統的基于C代碼開發的模式已不能滿足某些特殊功能需求的實現,需要向更高級別的語言進化,實現復雜功能的開發。

1

C++語言的廣泛應用

眾所周知,C代碼是面向過程的語言,具有執行速度快以及效率高的特點,在嵌入式開發領域占據很大的比重,是嵌入式系統、尤其面向底層的主要編程語言。但是隨著汽車行業智能化以及網聯化的發展,更多的是聚焦在復雜的應用以及算法開發上,對性能的要求就會非常高,比如智能駕駛,智能網聯等這類項目,相比C語言,具有面向對象機制的C++更適合用于這類項目的開發。

此外,為適配SOA架構和并行處理大數據等更復雜的需求,AP(Adaptive AUTOSAR)平臺正廣泛地應用于諸如車載域控制器自動駕駛和車聯網等領域;而AP也是基于C++語言開發的,這也正是因為C++所具備的特點更能滿足AP平臺對高安全性以及高計算能力的要求。

? C++兼容C語言的同時又引入了面向對象的機制。

? 封裝,繼承以及多態的特性使得C++中的類與對象呈現多樣性。

? C++中引入了一些特殊用法,比如const常量、智能指針、cast轉換、引用等,使得代碼更加安全。

? C++引入了模板概念,實現了將類型參數化的泛型編程,提升了代碼復用性;同時,基于模板類或模板函數的STL(標準模板庫)使得開發更便捷。

? C++中還提供了很多開源庫,比如神經網絡、加密、數學開源庫等,為復雜的應用開發提供了更多便利。

POLELINK

2

如何高效地

實施C++代碼測試

隨著汽車軟件的復雜度以及代碼量級的增加,主機廠和零部件供應商對代碼質量的要求也越來越高,并尋求各種方式來提升代碼質量,以盡早發現代碼問題實現對項目的把控和交付。同時,ISO 26262以及ASPICE也對軟件測試提出了明確的要求,即需要實施單元/集成測試。

在對軟件進行單元測試和集成測試時,除了要滿足相關需求測試的要求,還要考慮代碼整個結構的覆蓋度,測試過程因而比較繁瑣。在面對復雜的C++代碼項目時,如何才能高效地完成C++代碼的單元測試和集成測試,最大化地實現自動化測試?北匯信息采用的自動化測試工具是Vector旗下的代碼動態測試工具----VectorCAST/C++。

VectorCAST/C++

VectorCAST/C++工具是德國Vector公司的一款白盒測試工具,主要用于實現代碼的單元測試和集成測試。它最大的特點,同時也是相比于其它同類工具最大的優勢就在于,經受過多個大型量產項目實踐的對C++高階特性、Linux系統和CI平臺的強力支持。

支持C++11/14/17代碼解析

VectorCAST/C++工具內置了權威的商業化前端解析工具EDG對代碼進行解析,無論是基于C++11開發的,還是C++14又或者是C++17開發的,工具都可以完美支持C++11/14/17的特性。同時,針對C++復雜數據類型的使用,比如STL、模板、智能指針等,可實現圖形化界面操作,無需過多添加測試代碼,有效地提高了C++代碼的測試效率。


b15134da-296c-11ed-9ade-dac502259ad0.png

1

類的實例化

類在使用之前都需要進行類的實例化----對象創建,通過對象對類的成員屬性以及成員方法進行訪問,所以在編寫測試用例時,需要完成實例化對象的創建。工具可以解析類的所有構造函數,并在測試用例編輯區開辟對象實例化區域,測試人員可根據實際測試需求選擇匹配的構造函數來實例化對象。


b1898ca4-296c-11ed-9ade-dac502259ad0.png

2

模板類/模板函數測試

在基于C++開發的代碼中,模板的應用也非常廣泛,模板的出現,實現了類型的參數化,真正做到代碼的重用性。在針對函數模板和類模板進行測試時,VectorCAST/C++支持對模板函數自動插樁,實現圖形化界面操作,無需編寫測試代碼。


b1ba7e0e-296c-11ed-9ade-dac502259ad0.png

此外,在對模板類或者模板函數進行測試之前需要先進行實例化,然后再進行模板的測試。


b1ecf352-296c-11ed-9ade-dac502259ad0.png

3

容器類型數據測試

C++ STL標準模板庫中的容器是用來存放各種數據結構對象的集合。關于容器類型的數據,在VectorCAST/C++中,工具支持對C++標準模板庫的測試,可以對標準容器(string/vector/list/set/map等)、迭代器等進行解析,可直接在界面中進行賦值操作。

b22ea57c-296c-11ed-9ade-dac502259ad0.png

4

智能指針測試

智能指針的使用解決了C++的內存回收問題。VectorCAST/C++支持解析智能指針,比如shared_ptr,unique_ptr等,可直接通過工具界面為參數賦值。


b25a5492-296c-11ed-9ade-dac502259ad0.png

5

支持對第三方庫解析

在涉及到第三方庫的代碼測試中,VectorCAST/C++工具支持解析眾多第三方庫,并可針對相關庫函數進行自動插樁,實現圖像化界面操作。


b29c9a50-296c-11ed-9ade-dac502259ad0.png

集成實際交叉編譯鏈

VectorCAST/C++可以在Windows和Linux平臺中穩定運行,且支持眾多主流的交叉編譯鏈,比如Green Hills,Hightec,IAR,Tasking,Keil等。之所以支持眾多主流編譯鏈,是因為VectorCAST/C++是基于實際編譯鏈進行測試的。


b2cd5744-296c-11ed-9ade-dac502259ad0.png

自動生成測試用例

VectorCAST/C++滿足ISO26262和ASPICE中不同安全等級項目對覆蓋度指標的要求,包括語句、分支、MC/DC等。同時支持基于不同覆蓋度指標要求自動生成測試用例并自動填充輸入值,可以有效的提高V2X項目的測試效率。


b2f5889a-296c-11ed-9ade-dac502259ad0.png

綜上所述,在汽車電子未來發展中,大量復雜C++代碼會得到廣泛使用。借助工具對C++代碼的完美解析,都可以在工具中找到對應的解決方案,實現圖形化界面的操作,同時借助工具自身的測試優勢,可以有效地提高測試效率,實現C++代碼軟件的自動化測試。

3

結束語

本文主要介紹了VectorCAST/C++工具在基于C++開發的汽車電子軟件項目中的應用,當前工具也被廣泛用于智能網聯、智能駕駛的量產項目中。VectorCAST/C++工具不僅適用于C++測試,也適用于C測試,且通過了南德認證,是一款可用于功能安全認證的高效的代碼動態自動化測試工具,已廣泛用于眾多國內知名主機廠和零部件廠商。北匯信息作為Vector在中國的合作伙伴,致力于幫助中國客戶提升嵌入式控制系統的開發效率。如果你還在尋找合適的C/C++代碼測試工具,不妨來試一試VectorCAST/C++工具,定會讓你有心動的感覺。此外,在過去的C++測試項目中,我們也積累了一些測試經驗,期待與大家的交流與探討。


注:部分圖片來自于Vector。

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

    關注

    3028

    文章

    8010

    瀏覽量

    167565
收藏 人收藏

    評論

    相關推薦

    Spire.XLS for C++組件說明

    開發人員可以快速地 C++ 平臺上完成對 Excel 的各種編程操作,如根據模板創建新的 Excel 文檔,編輯現有 Excel 文檔,以及對 Excel 文檔進行轉換。 Spire.XLS
    的頭像 發表于 01-14 09:40 ?98次閱讀
    Spire.XLS for <b class='flag-5'>C++</b>組件說明

    AKI跨語言調用庫神助攻C/C++代碼遷移至HarmonyOS NEXT

    產品創新與功能迭代,而非技術遷移的細節問題,大幅提升開發效率。 據悉,涉及C/C++/ETS跨越語言調用的鴻蒙化應用中,有超過80%的項目都在使用AKI,如某知名購物應用,使用后減少了項目10%
    發表于 01-02 17:08

    同樣是函數,CC++中有什么區別

    同樣是函數, CC++ 中有什么區別? 第一個返回值。 C語言的函數可以不寫返回值類型,編譯器會默認為返回 int。 但是 C++
    的頭像 發表于 11-29 10:25 ?402次閱讀

    C7000優化C/C++編譯器

    電子發燒友網站提供《C7000優化C/C++編譯器.pdf》資料免費下載
    發表于 10-30 09:45 ?0次下載
    <b class='flag-5'>C</b>7000優化<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>編譯器

    ModusToolbox 3.2c代碼中包含c++代碼的正確步驟是什么?

    文件,但要在 main.c 中 #include 它們時 會導致構建失敗。 將 main.c 重命名為 main.cpp 會導致標準 XMC 庫函數(如 XMC_GPIO_SetMode)中出現許多錯誤。
    發表于 07-23 08:21

    C++語言基礎知識

    電子發燒友網站提供《C++語言基礎知識.pdf》資料免費下載
    發表于 07-19 10:58 ?7次下載

    C++中實現類似instanceof的方法

    函數,可實際上C++中沒有。但是別著急,其實C++中有兩種簡單的方法可以實現類似Java中的instanceof的功能。 C++ 中,確定對象的類型是編程中實際需求,使開發人員
    的頭像 發表于 07-18 10:16 ?646次閱讀
    <b class='flag-5'>C++</b>中實現類似instanceof的方法

    OpenCV圖像識別C++代碼

    的頭文件 您的C++代碼中,包含以下必要的頭文件: # include # include # include # include # include # include # include 讀取圖像
    的頭像 發表于 07-16 10:42 ?2311次閱讀

    任意波形發生器汽車電子測試中的應用

    隨著汽車電子技術的飛速發展,汽車電子系統日趨復雜,對測試技術的要求也越來越高。任意波形發生器(Arbitrary Waveform Gene
    的頭像 發表于 05-15 15:37 ?578次閱讀

    C/C++代碼動態測試工具VectorCAST插樁功能演示#代碼動態測試 #C++

    C++代碼
    北匯信息POLELINK
    發布于 :2024年04月18日 11:57:45

    鴻蒙OS開發實例:【Native C++

    使用DevEco Studio創建一個Native C++應用。應用采用Native C++模板,實現使用NAPI調用C標準庫的功能。使用C標準庫hypot接口計算兩個給定數平方和的平
    的頭像 發表于 04-14 11:43 ?2738次閱讀
    鴻蒙OS開發實例:【Native <b class='flag-5'>C++</b>】

    為什么很少用C++開發單片機

    C語言是面向過程的語言,C++是面向對象的編程語言。結合本文來說,面向過程相比面向對象的編程,生成代碼量(bin文件)更小,運行效率更高。
    發表于 03-25 14:26 ?1119次閱讀
    為什么很少用<b class='flag-5'>C++</b>開發單片機

    c語言,c++,java,python區別

    操作系統、嵌入式系統等對性能要求較高的場景。C語言的語法相對簡單,學習曲線較平緩,也是學習其他高級語言的入門語言。 C++C++C
    的頭像 發表于 02-05 14:11 ?2542次閱讀

    汽車emc測試項目包括哪些 汽車電子emc測試標準

    汽車EMC測試項目是為了評估汽車電子設備電磁環境下的抗干擾能力,以確保車輛的正常運行和安全性。以下是關于
    的頭像 發表于 01-31 14:32 ?3224次閱讀

    使用aurix c/c++任務調試器調試代碼,為什么無法得到結果?

    我正在嘗試使用 aurix 開發工作室 c/c++ 任務調試器調試代碼,但無法得到結果。 CAN 你幫我了解需要安裝哪些軟件以及需要遵循哪些步驟來檢查結果。 我正在嘗試調試 adc 過濾示例
    發表于 01-30 06:24
    主站蜘蛛池模板: 领导边摸边吃奶边做爽在线观看| 青春草国产成人精品久久| 秋霞av伦理片在线观看| 中文字幕亚洲无线码在线| 久久777国产线看观看精品卜| 亚洲嫩草AV永久无码精品无码| 国产精品自在自线亚洲| 无码人妻丰满熟妇区五十路久久| 国产69精品久久久久乱码| 日韩精品一卡二卡三卡四卡2021| 纯肉巨黄H爆粗口男男分卷阅读| 日本免费xxx| 国产电影一区二区三区| 视频成人永久免费看| 老外的好大c的我好爽| 伊人久久大香线蕉综合高清| AV天堂午夜精品蜜臀AV| 女教师杨雪的性荡生活| 亚洲国产日韩欧美视频二区| 国产色婷亚洲99精品AV在线| 亚洲国产日韩欧美高清片a| 久久久GOGO无码啪啪艺术| 无码专区aaaaaa免费视频| 国产女人毛片| 亚洲一卡久久4卡5卡6卡7卡| 成人精品视频在线| 色欲AV亚洲永久无码精品| ass女人下部欣赏| 泡妞高手在都市免费观看| 嘟嘟嘟影院免费观看视频| 性色无码AV久久蜜臀| 久久九九亚洲精品| np高h肉辣一女多男| 色在线视频亚洲欧美| 韩国三级久久精品| 最美白嫩的极品美女ASSPICS| 欧洲日韩av无线在码| 国产无线乱码一区二三区| 世界第一黄暴漫画家| 好男人好资源视频高清| 中文字幕在线视频观看|