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

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

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

CI/CT與DevOps流程下的SIL測試平臺

北匯信息POLELINK ? 2022-11-02 10:14 ? 次閱讀

汽車制造商最新EEA架構(gòu)已基于高性能計算平臺HPC和區(qū)域控制器Zone ECU開發(fā),同時規(guī)劃通過云端協(xié)同計算和生態(tài)引入來提升整車智能化能力,并支撐車云一體化軟件平臺部署。車或云端服務(wù)設(shè)計與開發(fā)、組合與編排均需要結(jié)合開發(fā)環(huán)境進(jìn)行快速集成驗證,而不應(yīng)局限采用傳統(tǒng)“V”模型HIL測試或?qū)嵻嚶吩囘@種非常滯后的方法?;谥虚g件的SOA技術(shù)實現(xiàn)軟件與硬件解耦、應(yīng)用與通信解耦,伴隨CI/CT與DevOps的引入來加速軟件迭代,結(jié)合開發(fā)環(huán)境構(gòu)建SIL測試為“軟件工廠”各階段質(zhì)量保障提供快速反饋。服務(wù)器版本CANoe4SW SE為分布式軟件開發(fā)、“黑盒”軟件交付提供基礎(chǔ)驗證平臺,有利支撐后續(xù)App Store中軟件的質(zhì)量。

d994bb94-5791-11ed-b116-dac502259ad0.jpg

圖1:隨著車云一體化的“軟件工廠”

CI/CT、DevOps流程與SOA測試

過往分布式架構(gòu)中諸多ECU算法將服務(wù)化整合到HPC和Zone ECU,跨地區(qū)和部門團(tuán)隊的協(xié)同必須采用敏捷的流程,才能安全、穩(wěn)定、快捷、高效地完成復(fù)雜SOA軟件交付。通常SOA服務(wù)測試包括:SOA服務(wù)接口測試、SOA業(yè)務(wù)邏輯測試、SOA壓力測試和SOA性能測試等,除性能測試需在HIL環(huán)境驗證外其它測試內(nèi)容均可在SIL環(huán)境中測試驗證。無論SOA的SIL或HIL,均需工具能夠同時支持SOME/IP、MQTT和DDS等車載中間件的協(xié)議的仿真、測試和分析,包括數(shù)據(jù)庫定義或修改功能;同時必須有SIL和HIL的自動化腳本庫,否則CI/CT和DevOps只是“徒有其名”。伴隨車云一體化和OTA系統(tǒng)的搭建,基于成熟IT配置環(huán)境在開發(fā)驗證流程中完全可以實現(xiàn)持續(xù)集成、持續(xù)測試、持續(xù)交付,滿足敏捷或DevOps流程實現(xiàn)SOA測試驗證與交付。相關(guān)工具必須支持高度耦合SOA開發(fā)環(huán)境并支持在結(jié)合IT環(huán)境中的自動化,如部署在基于Linux的PC或Docker運行、VS/VSC的開發(fā)調(diào)試、基于YAML的配置等。

d9adf686-5791-11ed-b116-dac502259ad0.jpg

圖2:軟件生命周期中持續(xù)迭代過程構(gòu)成DevOps反饋

汽車行業(yè)DevOps測試平臺:

CANoe4SW Server Edition

結(jié)合敏捷開發(fā)理念,順勢而為開展DevOps流程,在服務(wù)器或云集群環(huán)境下持續(xù)測試軟件系統(tǒng),達(dá)到質(zhì)效平衡。服務(wù)器版本CANoe4SW SE(CANoe4SW Server Edition)通過腳本控制復(fù)用CANoe或CANoe4SW測試工程滿足自動化仿真、診斷和測試,或在沒有CANoe情況下通過YAML配置實現(xiàn)DevOps流程中的自動化測試。開放和靈活的DevOps平臺支持部署在各類虛擬環(huán)境中,包括Dockers Container和Virtual Machines,操作系統(tǒng)支持:Windows 10/11、Windows Server 2019、Linux Ubuntu 18.04/20.04/22.04和AlmaLinux 8.6等,具有與自研方案互聯(lián)擴(kuò)展、耦合動力學(xué)與場景仿真工具、高度支持CI/CT/CD自動化流程、云化擴(kuò)展等功能。

d9c484aa-5791-11ed-b116-dac502259ad0.jpg

圖3:CANoe產(chǎn)品體系中CANoe4SW SE的應(yīng)用

CANoe4SW SE提供前端命令行操控、REST API監(jiān)控、后端支持YAML配置實現(xiàn)服務(wù)器或云端自動并發(fā)執(zhí)行,配合Vector開源的SIL Kit可實現(xiàn)車端和云端SOA軟件虛擬集成,同時結(jié)合平臺開放的接口MATLAB/Simulink、FMI/FMU和FDX可構(gòu)建復(fù)雜SIL測試系統(tǒng),自動化測試設(shè)計使用vTESTstudio實現(xiàn)。開放接口和自動化腳本執(zhí)行均支持Linux配置環(huán)境,從而更好滿足服務(wù)器或云端驗證SOA應(yīng)用軟件,同時搭配AUTOSAR Classic軟件虛擬化工具vVIRTUALtarget SE可滿足MCU端軟件的虛擬集成測試。

CANoe4SW Server Edition

命令行工具集

>

AUTOSAR Preprocessor:通過命令行或調(diào)用.yaml配置實現(xiàn)SIL測試環(huán)境在配置階段需要多個AUTOSAR Extract(SYS-E)合并為System Description (SYS-D)的功能;

>

CANoe4ServerControl:控制CANoe4SW SE執(zhí)行工具,包括instance的開啟和關(guān)閉、對應(yīng)instance工程的啟動與停止,以及instance運行狀態(tài)的查詢;

>

canoe4sw-se:實現(xiàn)environment-make或CANoe/CANoe4SW導(dǎo)出的*.rtcfg的執(zhí)行,支持自動和手動兩種模式;

>

environment-make:解析*.yaml文件并編譯SUT運行的配置環(huán)境工程;

>

sil-adapter-builder:將binding在SiLkit的軟件接口描述文件創(chuàng)建為C++Python應(yīng)用程序的SiL Adapter;

>

test-unit-make:編譯vTESTstudio創(chuàng)建自動化腳本為*.vtuexe,能被canoe4sw-se加載執(zhí)行;

>

wlogdump:前端顯示或?qū)懭胂到y(tǒng)運行過程中的日志信息。

d9e2e4a4-5791-11ed-b116-dac502259ad0.jpg

圖4:前端命令行操控實現(xiàn)軟件集成測試

基于YAML配置DevOps中的測試

過往在CI/CT測試中使用Jenkins調(diào)度控制CANoe及其工程配置通過COM組件實現(xiàn),配置過程依賴CANoe的license才能實現(xiàn)CANoe4SW SE需要的配置。在實際SOA軟件開發(fā)過程中,DevOps開發(fā)配置工程師更多使用簡潔強(qiáng)大的YAML來寫配置文件,CANoe4SW SE仿真環(huán)境可直接基于YAML配置實現(xiàn),在Visual Studio Code中配置對應(yīng)Schema可實現(xiàn)對應(yīng)描述文件的配置,支持自動補(bǔ)全和校驗功能,YAML配置語法規(guī)則詳見CANoe4SW SE的Help手冊。

da060786-5791-11ed-b116-dac502259ad0.jpg

圖5:使用VSC配置YAML文件

結(jié)合YAML配置的實現(xiàn)DevOps流程如下:

>

創(chuàng)建仿真環(huán)境需要的*.yaml文件:在配置中加載數(shù)據(jù)庫(如*.arxml)、數(shù)據(jù)源(如*.vcdl)、應(yīng)用程序(CAPL、C#或Python),配置不同應(yīng)用場景的配置切換;

>

通過environment-make將配置文件轉(zhuǎn)換為可執(zhí)行的工程文件;

$ environmaent-make

>

通過test-unit-make將vTESTstudio創(chuàng)建的自動化腳本加載到上一步生成的配置工程中,如下將MyTests.vtuexe加載到Default.venvironment對應(yīng)配置中;

$ test-unit-make MyTests.vtuexe --environment Default.venvironment

>

通過canoe4sw-se在CANoe4SW SE環(huán)境中執(zhí)行工程和測試腳本,如下執(zhí)行MyTests.vtuexe中的所有測試用例。

$canoe4sw-seDefault.venvironment --test-unit MyTests.vtestunit --show-progress tree-element

CANoe Make支持跨平臺的工程創(chuàng)建,能夠在Linux平臺上執(zhí)行vTESTstduio創(chuàng)建的自動化腳本。CANoe4SW SE當(dāng)前版本已支持Linux系統(tǒng)中的功能如:Ethernet/CAN FD/CAN/LIN總線仿真、執(zhí)行vTESTstudio自動化腳本、耦合外部應(yīng)用的FDX/FMI接口、XCP等。在Ubuntu Server環(huán)境中只需拷貝*.tar.gz創(chuàng)建安裝路徑提取安裝即可。使用Docker容器技術(shù)也可執(zhí)行CANoe4SW SE的instance,通過Dockerfile配置和創(chuàng)建Container Image,在Docker環(huán)境支持響應(yīng)式部署和擴(kuò)展、資源開銷低,當(dāng)然系統(tǒng)支持云部署。

# Create Default.venvironment?based on one?venvironment.yaml for Linux
$environment-make. --arch Linux64
# Compile the test unit MyTests.vtuexe for the previously created Default.venvironment
$test-unit-makeMyTests.vtuexe --environment Default.venvironment

# Execution of all test cases of the test unit?MyTests.vtuexe for the Default.venvironment

$?canoe4sw-se?Default.venvironment --test-unit MyTests.vtestunit --show-progress tree-element

da1f97dc-5791-11ed-b116-dac502259ad0.jpg

圖6:集成測試在CI環(huán)境中滿足跨平臺部署

開源SIL Kit庫賦能SOA等軟件系統(tǒng)的SIL集成

車云SOA系統(tǒng)和嵌入式軟件模塊集成時,無論軟件系統(tǒng)或軟件模塊之間的交互是總線、I/O或軟件接口,開源免費的“分布式軟總線”庫SIL Kit(源碼與說明文檔詳見:https://github.com/vectorgrp/sil-kit)支持SUT能夠在應(yīng)用軟件或報文層面實現(xiàn)集成,且支持跨平臺,使得SIL測試與HIL使用相同的環(huán)境實現(xiàn)。結(jié)合完整的SIL測試腳本設(shè)計工具vTESTstudio、測試執(zhí)行平臺CANoe4SW SE、SUT虛擬化工具、車輛動力學(xué)和場景模型DYNA4,可實現(xiàn)SOA開環(huán)或閉環(huán)的測試。SOA應(yīng)用中的軟件系統(tǒng)、虛擬控制器,以及云端監(jiān)控應(yīng)用或采集數(shù)據(jù)皆可通過SIL Kit集成交互。

da33abc8-5791-11ed-b116-dac502259ad0.jpg

圖7:開源免費的SIL Kit賦能汽車行業(yè)SIL

更多信息

CANoe4SW SE提供CI Team License(CITL)和CI Agent Count License(CIACL)兩種授權(quán)模式,滿足多團(tuán)隊協(xié)同持續(xù)集成測試和大規(guī)模系統(tǒng)并發(fā)測試等復(fù)雜應(yīng)用場景。

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

    關(guān)注

    0

    文章

    9

    瀏覽量

    2548
  • devops
    +關(guān)注

    關(guān)注

    0

    文章

    115

    瀏覽量

    12028
收藏 人收藏

    評論

    相關(guān)推薦

    CI/CD方案:推動智能汽車開發(fā)的高效利器

    在智能化和自動駕駛技術(shù)飛速發(fā)展的背景,汽車軟件開發(fā)的復(fù)雜性正以前所未有的速度增長。面對市場對效率、質(zhì)量和快速迭代的高需求,傳統(tǒng)開發(fā)模式已然捉襟見肘。作為提升開發(fā)效率和質(zhì)量的核心工具,CI/CD
    的頭像 發(fā)表于 12-18 10:03 ?413次閱讀
    <b class='flag-5'>CI</b>/CD方案:推動智能汽車開發(fā)的高效利器

    汽車軟件DevOps解決方案

    經(jīng)緯恒潤汽車軟件DevOps解決方案是專為現(xiàn)代汽車行業(yè)設(shè)計的一套集成化需求、開發(fā)、測試、部署、OTA與監(jiān)控,旨在加速軟件開發(fā)流程,提高軟件質(zhì)量和安全性,同時確保整個生命周期的高效性和靈活性。
    的頭像 發(fā)表于 12-16 10:33 ?1159次閱讀
    汽車軟件<b class='flag-5'>DevOps</b>解決方案

    devops使用最廣泛的集成工具盤點

    devops使用最廣泛的集成工具包括GitLab(全棧DevOps平臺)、Jenkins(CI/CD自動化服務(wù)器)、Docker(容器化技術(shù))、Kubernetes(容器編排
    的頭像 發(fā)表于 11-26 13:48 ?182次閱讀

    艾體寶產(chǎn)品 CircleCI:高效的CI/CD平臺,助力開發(fā)團(tuán)隊加速交付!

    CircleCI是一個強(qiáng)大的CI/CD平臺,專為提高軟件開發(fā)效率而設(shè)計。它通過自動化測試、構(gòu)建和部署,幫助開發(fā)團(tuán)隊加速交付,減少手動錯誤。支持平行化測試、Docker容器化管理,并與多
    的頭像 發(fā)表于 11-20 10:22 ?213次閱讀
    艾體寶產(chǎn)品 CircleCI:高效的<b class='flag-5'>CI</b>/CD<b class='flag-5'>平臺</b>,助力開發(fā)團(tuán)隊加速交付!

    AUTOSAR架構(gòu),持續(xù)集成CI的最佳實踐

    集成(CI流程。今天,我們就來探討一基于AUTOSAR架構(gòu)的CI流程實踐,并通過對流程的詳細(xì)
    的頭像 發(fā)表于 10-24 08:06 ?502次閱讀
    AUTOSAR架構(gòu)<b class='flag-5'>下</b>,持續(xù)集成<b class='flag-5'>CI</b>的最佳實踐

    電池測試流程測試方法有哪些

    電池測試是確保電池性能、安全性和可靠性的重要環(huán)節(jié)。由于電池技術(shù)的種類繁多,包括鋰離子電池、鎳氫電池、鉛酸電池等,每種電池的測試流程和方法都有所不同。 電池測試
    的頭像 發(fā)表于 09-23 16:51 ?956次閱讀

    行云流水線 滿足你對工作流編排的一切幻想~skr

    流水線模型 眾所周知,DevOps流水線(DevOps pipeline)的本質(zhì)是實現(xiàn)自動化工作流程,用于支持軟件開發(fā)、測試和部署的連續(xù)集成、交付和部署(
    的頭像 發(fā)表于 08-05 13:42 ?293次閱讀

    在Linux服務(wù)器上使用IAR Build Tools實現(xiàn)DevOpsCI/CD

    近些年來,隨著嵌入式軟件越來越復(fù)雜,DevOpsCI/CD也開始被引入到嵌入式軟件開發(fā)中,越來越多的自動化構(gòu)建(Build)和測試都放到Linux服務(wù)器上來提升研發(fā)效率。為了幫助用戶更好地在
    的頭像 發(fā)表于 07-25 10:22 ?999次閱讀
    在Linux服務(wù)器上使用IAR Build Tools實現(xiàn)<b class='flag-5'>DevOps</b>和<b class='flag-5'>CI</b>/CD

    性能測試流程和步驟有哪些

    性能測試是軟件測試的一個重要環(huán)節(jié),主要目的是評估軟件在不同負(fù)載條件的性能表現(xiàn),以確保軟件能夠滿足用戶的需求。本文將詳細(xì)介紹性能測試流程
    的頭像 發(fā)表于 05-29 16:00 ?806次閱讀

    CT分析儀試驗運行流程——每日了解電力知識

    今天武漢摩恩智能電氣有限公司帶大家了解一MEVA-I CT分析儀。 MEVA-I CT分析儀試驗運行的一般流程: 儀器的軟件運行可以分為“等待新建試驗”,“等待試驗”,“查看結(jié)果”,
    的頭像 發(fā)表于 05-22 09:55 ?438次閱讀
    <b class='flag-5'>CT</b>分析儀試驗運行<b class='flag-5'>流程</b>——每日了解電力知識

    HDHG型CT互感器勵磁特性測試儀使用方法

    1.設(shè)計用途本參考GB1207-2006、GB1208-2006等標(biāo)準(zhǔn)設(shè)計,用于對保護(hù)類CT進(jìn)行自動測試,適用于實驗室及現(xiàn)場檢測??勺詣油瓿?b class='flag-5'>CT勵磁特性、CT變比、
    的頭像 發(fā)表于 04-08 13:46 ?565次閱讀
    HDHG型<b class='flag-5'>CT</b>互感器勵磁特性<b class='flag-5'>測試</b>儀使用方法

    康謀方案 | 從概念到生產(chǎn)的自動駕駛軟件在環(huán)(SiL測試解決方案

    自動駕駛軟件在環(huán)(SiL測試解決方案 自動駕駛軟件在環(huán)(SiL測試解決方案能夠研究和驗證高歷程實驗和惡劣駕駛環(huán)境的AD系統(tǒng)的性能,支持
    的頭像 發(fā)表于 02-06 11:09 ?707次閱讀
    康謀方案 | 從概念到生產(chǎn)的自動駕駛軟件在環(huán)(<b class='flag-5'>SiL</b>)<b class='flag-5'>測試</b>解決方案

    如何在DevOps環(huán)境中實施測試用例管理

    由于DevOps 工作流程使用CI/CD 方法進(jìn)行軟件開發(fā),因此您的測試管理工具還應(yīng)該能夠與GitLab 和Jenkins 等CI/CD 工
    的頭像 發(fā)表于 01-29 09:30 ?1538次閱讀
    如何在<b class='flag-5'>DevOps</b>環(huán)境中實施<b class='flag-5'>測試</b>用例管理

    INTEWORK—PET 汽車軟件持續(xù)集成平臺

    INTEWORK-PET-CI是經(jīng)緯恒潤自主研發(fā)的汽車軟件持續(xù)集成&持續(xù)交付平臺,在傳統(tǒng)的持續(xù)集成基礎(chǔ)上深化了研運一體化(DevOps)的概念,將嵌入式軟件中的拉取代碼、檢查、構(gòu)建、測試
    的頭像 發(fā)表于 01-19 11:04 ?607次閱讀
    INTEWORK—PET 汽車軟件持續(xù)集成<b class='flag-5'>平臺</b>

    什么是DevOps中的持續(xù)測試?持續(xù)測試如何融入DevOps?

    持續(xù)測試(CT) 是在整個軟件開發(fā)生命周期(SDLC) 中自動測試軟件應(yīng)用程序和組件的實踐。在 DevOps 中,持續(xù)測試是在整個
    的頭像 發(fā)表于 01-09 09:10 ?573次閱讀
    什么是<b class='flag-5'>DevOps</b>中的持續(xù)<b class='flag-5'>測試</b>?持續(xù)<b class='flag-5'>測試</b>如何融入<b class='flag-5'>DevOps</b>?