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

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

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

3天內不再提示

關于持續集成與基于模型的設計的分析和應用

MATLAB ? 來源:djl ? 2019-09-12 09:10 ? 次閱讀

持續集成(Continuous Integration)在純軟件開發中是一個比較通用的實踐:

持續集成是一種軟件開發實踐,即團隊開發成員經常集成他們的工作,通常每個成員每天至少集成一次,也就意味著每天可能會發生多次集成。每次集成都通過自動化的構建(包括編譯,發布,自動化測試)來驗證,從而盡快地發現集成錯誤。許多團隊發現這個過程可以大大減少集成的問題。

持續集成通常伴隨著以下幾個部分:

和版本管理工具友好集成

編譯自動化

測試自動化

例如,張三開發了一個新功能,他所在的版本開發分支為Testing。他在提交代碼后(當然自己需要先測試一下),系統可以自動編譯,并運行回歸測試用例。在確定功能穩定可用后,Testing分支可合并到主分支。

大部分MBD(基于模型的設計,Model-Based Deisgn)客戶都已經比較好地使用了版本管理工具,例如SVN或者Git。很多客戶也能開發一些MATLAB腳本做一些自動化編譯,例如:

使用Embedded Coder自動產生算法層C代碼,將C代碼自動拷貝到TI的CCS工程和驅動部分代碼整合,然后自動調用CCS的編譯功能進行編譯鏈接產生最終二進制文件,此后可以將二進制文件自動下載到開發板芯片中編譯執行。

MBD之所以為一種開發效率高的開發模式,用戶會將主要精力集中于Model-In-the-Loop(MIL)的開發。在MIL層面,用戶會開發大量的單元測試用例,在和用戶的討論中發現,有一種場景比較實用:

提交模型+自動回歸測試+自動報告生成

本文以Git、GitLab、Jenkins為主要工具,介紹如何配置MBD模式下的自動回歸測試+自動報告生成。

詳細配置

關于持續集成與基于模型的設計的分析和應用

注意:通常情況下,Jenkins Server會選擇一個計算能力較強的服務器,本文為了方便選擇將Simulink和Jenkins裝在同一機器上。

1. GitLab的項目創建

先在GitLab下建立一個項目,本地Git和GitLab Server可以選擇SSH連接也可選擇HTTPS方式,本文選擇HTTPS。

關于持續集成與基于模型的設計的分析和應用

然后在本地的Simulink工程目錄,打開Git Bash。

>> Git init

>> Git clone https://insidelabs-git.mathworks.com/mozhou/SBR.git

2. Simulink和Git集成

本文中,Git可視為GitLab的客戶端。Simulink可以直接在界面中,進行Git的操作,見下圖:

關于持續集成與基于模型的設計的分析和應用

建議直接用Git命令行操作,優勢如下:

Git命令行靈活方便,易于腳本化。

想要熟悉Git命令,自己最好從頭開始,用Git init、Git add、Git commit、Git push把Simulink工程中的文件添加到GitLab Server。也可理解一個Simulink工程中哪些文件是永久文件(需要添加到版本庫),哪些是中間文件(不需要添加到版本庫)。

Simulink是比較智能的。

一旦你用手動方式做了一遍Git操作,Simulink就自動“記得”哪些文件和Git庫是有關聯。

3.Jenkins的配置

首先,安裝Jenkins時候裝上必用的幾個plugin :Git plugin、GitLab plugin、GitLab Hook plugin。然后在Jenkins里面建立項目。

配置源代碼GitLab倉庫設置

關于持續集成與基于模型的設計的分析和應用

配置BuildTrigger

在GitLab的項目的settings -> integrations:

關于持續集成與基于模型的設計的分析和應用

加上webhook后可以測試一下。

關于持續集成與基于模型的設計的分析和應用

然后回到Jenkins的項目設置:

關于持續集成與基于模型的設計的分析和應用

配置編譯腳本:

關于持續集成與基于模型的設計的分析和應用

runMyTests.m 是一個MATLAB腳本,它的功能就是將指定位置的測試用例找到,然后批量執行所有回歸測試用例,最后輸出指定格式的報告。

關于持續集成與基于模型的設計的分析和應用

關于持續集成與基于模型的設計的分析和應用

關于持續集成與基于模型的設計的分析和應用

3. 運行

打開模型

關于持續集成與基于模型的設計的分析和應用

瀏覽測試用例:測試用例一共有6個

關于持續集成與基于模型的設計的分析和應用

編輯模型后,提交到GitLab。

關于持續集成與基于模型的設計的分析和應用

在Jenkins上編譯成功,查看編譯和測試報告。

關于持續集成與基于模型的設計的分析和應用

關于持續集成與基于模型的設計的分析和應用

在實際的工程項目中,隨著項目和人員的擴展,越來越多的開發人員會利用合適的代碼版本管理和持續集成工具進行并行開發。Git、GitLab、Jenkins這個組合適用于任意大小規模的持續集成開發模式。持續集成也是敏捷開發的一個最佳實踐。而MBD的模式——早期驗證、虛擬集成完全符合敏捷開發的理念。越來越多的開發人員在使用MBD的同時也關注如何擁抱敏捷開發。

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

    關注

    12

    文章

    9304

    瀏覽量

    86062
  • 源代碼
    +關注

    關注

    96

    文章

    2946

    瀏覽量

    66956
收藏 人收藏

    評論

    相關推薦

    持續改進工具之戰:Smartsheet vs. Minitab Engage

    Smartsheet和Engage: 持續集成路線圖:Smartsheet缺乏成功執行項目所需的預構建持續集成工作流。Engage在每
    的頭像 發表于 01-24 14:40 ?86次閱讀

    云服務器Flexus X實例,Docker集成搭建Jenkins CI/CD平臺

    Jenkins 是一個開源的自動化服務器,用于持續集成(CI)和持續交付(CD)軟件項目。它允許開發人員在軟件開發過程中自動化各種任務,如構建、測試和部署,從而提高開發效率和軟件質量。
    的頭像 發表于 12-29 15:43 ?163次閱讀
    云服務器Flexus X實例,Docker<b class='flag-5'>集成</b>搭建Jenkins CI/CD平臺

    【「大模型啟示錄」閱讀體驗】營銷領域大模型的應用

    今天跟隨「大模型啟示錄」這本書,學習在營銷領域應用大模型。 大模型通過分析大量的消費者數據,包括購買歷史、瀏覽記錄、社交媒體互動等,能夠識別消費者的偏好和行為模式。這種
    發表于 12-24 12:48

    MATLAB之基于模型設計助力智能家電可持續創新

    ,以及多模式、AI 智能等的軟件算法。 基于模型的設計是一種數字化研發流程,在整個研發過程中系統地使用模型進行數字建模、仿真和數值分析,以持續優化產品;從 MATLAB
    的頭像 發表于 12-04 14:15 ?308次閱讀
    MATLAB之基于<b class='flag-5'>模型</b>設計助力智能家電可<b class='flag-5'>持續</b>創新

    AI模型托管原理分析

    AI模型托管是指將訓練好的AI模型部署在云端或邊緣服務器上,由第三方平臺提供模型運行、管理和優化等服務。以下,AI部落小編將對AI模型托管的原理進行詳細
    的頭像 發表于 11-07 09:33 ?248次閱讀

    AI模型市場分析

    隨著人工智能技術的快速發展,AI模型已成為全球科技競爭的新高地、未來產業的新賽道以及經濟發展的新引擎。下面,AI部落小編分析了當前AI模型市場。
    的頭像 發表于 11-01 09:51 ?220次閱讀

    AUTOSAR架構下,持續集成CI的最佳實踐

    隨著汽車電子技術的快速發展,汽車軟件的復雜性與日俱增,如何確保軟件開發的高效性與穩定性成為了一個關鍵問題。為了解決這個問題,許多汽車企業和供應商逐漸引入了AUTOSAR架構,并在此基礎上構建了持續集成
    的頭像 發表于 10-24 08:06 ?565次閱讀
    AUTOSAR架構下,<b class='flag-5'>持續集成</b>CI的最佳實踐

    使用AI大模型進行數據分析的技巧

    使用AI大模型進行數據分析的技巧涉及多個方面,以下是一些關鍵的步驟和注意事項: 一、明確任務目標和需求 在使用AI大模型之前,首先要明確數據分析的任務目標,這將直接影響
    的頭像 發表于 10-23 15:14 ?1107次閱讀

    使用IBIS模型進行時序分析

    電子發燒友網站提供《使用IBIS模型進行時序分析.pdf》資料免費下載
    發表于 10-21 10:00 ?0次下載
    使用IBIS<b class='flag-5'>模型</b>進行時序<b class='flag-5'>分析</b>

    Perforce靜態分析工具2024.2新增功能:Helix QAC全新CI/CD集成支持、Klocwork分析引擎改進和安全增強

    實現持續合規性現代軟件開發實踐要求開發團隊具備適應性,在確保代碼質量和可靠性的同時,優先考慮靈活性和協作性。在軟件開發流程中實施持續集成(CI)和持續交付(CD)流
    的頭像 發表于 10-08 16:22 ?340次閱讀
    Perforce靜態<b class='flag-5'>分析</b>工具2024.2新增功能:Helix QAC全新CI/CD<b class='flag-5'>集成</b>支持、Klocwork<b class='flag-5'>分析</b>引擎改進和安全增強

    Al大模型機器人

    豐富的知識儲備。它們可以涵蓋各種領域的知識,并能夠回答相關問題。靈活性與通用性: AI大模型機器人具有很強的靈活性和通用性,能夠處理各種類型的任務和問題。持續學習和改進: 這些模型可以通過持續
    發表于 07-05 08:52

    【大語言模型:原理與工程實踐】大語言模型的應用

    ,它通過抽象思考和邏輯推理,協助我們應對復雜的決策。 相應地,我們設計了兩類任務來檢驗大語言模型的能力。一類是感性的、無需理性能力的任務,類似于人類的系統1,如情感分析和抽取式問答等。大語言模型在這
    發表于 05-07 17:21

    【大語言模型:原理與工程實踐】探索《大語言模型原理與工程實踐》2.0

    《大語言模型“原理與工程實踐”》是關于大語言模型內在機理和應用實踐的一次深入探索。作者不僅深入討論了理論,還提供了豐富的實踐案例,幫助讀者理解如何將理論知識應用于解決實際問題。書中的案例分析
    發表于 05-07 10:30

    使用cube-AI分析模型時報錯的原因有哪些?

    使用cube-AI分析模型時報錯,該模型是pytorch的cnn轉化成onnx ``` Neural Network Tools for STM32AI v1.7.0 (STM.ai v8.0.0-19389) INTER
    發表于 03-14 07:09

    gis中制作最小阻力模型步驟

    GIS(地理信息系統)是一種集成數據、軟件和硬件技術,用于捕獲、存儲、管理、分析和顯示地理數據的系統。在GIS中,制作最小阻力模型可以用于研究生物遷徙、水流、物質擴散等現象。以下是關于
    的頭像 發表于 02-25 14:59 ?1245次閱讀
    主站蜘蛛池模板: 日韩欧美一区二区三区不卡视频 | 天天插天天狠天天透 | 特级做a爰片毛片免费看 | 国产高清区 | 91精品久久久久含羞草 | 国产三级三级三级 | 夜夜cao| 亚欧有色亚欧乱色视频 | 亚洲天堂手机在线 | 亚洲福利秒拍一区二区 | 毛片小视频 | 欧美成人午夜影院 | 天天色综合色 | 经典三级影院 | 午夜影皖 | 丁香久久婷婷 | 狠狠欧美 | 四虎影院永久 | 手机看片国产免费永久 | 婷婷久久综合九色综合98 | 可以看黄色的网站 | 理论片毛片 | 免费看美女午夜大片 | 综合欧美一区二区三区 | 天天色天天碰 | 天天躁夜夜躁狠狠躁躁88 | 欧美午夜视频 | 美女被日出白浆 | 九九热最新 | 国产嫩草影院精品免费网址 | 91在线操| 欧美三级手机在线 | 狼人久久尹人香蕉尹人 | 亚洲欧美圣爱天天综合 | 97人人看| 性黄视频 | 啪啪午夜免费 | 就操 | 美女黄页网 | 欧美高清milf在线播放 | 爱爱的免费视频 |