日本无码免费高清在线|成人日本在线观看高清|A级片免费视频操逼欧美|全裸美女搞黄色大片网站|免费成人a片视频|久久无码福利成人激情久久|国产视频一二国产在线v|av女主播在线观看|五月激情影音先锋|亚洲一区天堂av

  • 手機站
  • 小程序

    汽車測試網(wǎng)

  • 公眾號
    • 汽車測試網(wǎng)

    • 在線課堂

    • 電車測試

智能汽車車用基礎(chǔ)軟件平臺關(guān)聯(lián)技術(shù)

2022-09-25 17:59:10·  來源:汽車測試網(wǎng)  
 

(2) 代碼管理


代碼管理是 CI/CD 流程中不可或缺的一部分,代碼管理包含了版本管理和代碼審核兩部分,版本管理方式?jīng)Q定了是否能夠?qū)嵺` CI/CD 以及 CI/CD 的實踐策略。目前比較常用的版本管理工具有 GIT、SVN、 RTC 等,這些工具可以方便 CI 針對不同的分支和版本制定不同的集成和檢查策略。如圖 4.4-6 所示,在代碼管理部分,目前比較主流的做法是:針對不同的分支和主干,采用不同的策略,包括觸發(fā)策略和審 查策略。


·  在觸發(fā)策略上,對于個人分支,可以采用提交觸發(fā)的方式,即該分支上每次的提交都會觸發(fā)檢查, 主要檢查本次提交的代碼本身有沒有問題;而在集成分支上,一般則采用定時觸發(fā)或合并觸發(fā)方式, 即設(shè)定固定的觸發(fā)時間或每次有新的合并時才去檢查,這部分則主要檢查本次合并過來的代碼是 否會對原來的代碼造成影響。


·  在審查策略上,同樣建議按分支來劃分,對于個人分支部分,主要進(jìn)行代碼本身的靜態(tài)、動態(tài)測試等;而對于集成分支,除了靜態(tài)、動態(tài)的測試,往往還需要集成測試、系統(tǒng)測試等。當(dāng)然,在代碼集成時,除了自動化的測試審查外,還建議引入人工審查,以最大程度保證代碼的質(zhì)量。


圖片

圖4.4-6代碼管理


目前,市面上也有很多基于GIT 的優(yōu)秀工具,比如Github、Gitlab、Gerrit 等,這些工具集成了版本管理、代碼審核等基本功能。有了這些工具,再配合合適的分支模式(主干開發(fā)模式、Git-Flow 模式、Github- Flow 模式、Gitlab-Flow 模式等),即可方便地支撐 CI/CD 流程。


(3) 靜態(tài)檢查


代碼靜態(tài)檢查可以在不需要代碼運行的情況下,基于源代碼層面,對源代碼使用規(guī)則進(jìn)行分析和檢查, 這可以有效的提高代碼質(zhì)量。一些優(yōu)秀的工具可以深入到代碼程序的邏輯檢查、內(nèi)存使用情況的檢查甚至更高層面的檢查,可以有效地提高代碼的安全性、健壯性和運行性能。


代碼靜態(tài)檢查環(huán)節(jié)是持續(xù)集成中最常做的以及最容易實現(xiàn)的環(huán)節(jié)。在該環(huán)節(jié),一般輸入源代碼以及檢查規(guī)則,即可完成自動化的檢查。而在該環(huán)節(jié),我們還應(yīng)該關(guān)注代碼需要滿足哪些規(guī)則,以及為何需要滿足這些規(guī)則,以此來提高開發(fā)工程師的開發(fā)能力。


在通常使用的靜態(tài)解析工具中,開源的有 Cppcheck、Cpplint,、Findbugs、Spotbugs 等,商用的有 QAC、Klocwork 等。對于一些功能安全件,有代碼質(zhì)量的要求,靜態(tài)代碼檢查規(guī)則需要滿足車載行業(yè)檢查標(biāo)準(zhǔn),常見的標(biāo)準(zhǔn)有 Misra C,Misra C++,對于安全編碼層面,常用的標(biāo)準(zhǔn)有 Cert C,Cert C++, Cert Java 標(biāo)準(zhǔn)。商用軟件能夠覆蓋目前的大部分檢查規(guī)則。如下圖 4.4-7 所示為商用軟件QAC 的界面。


圖片

圖4.4-7 靜態(tài)代碼解析工具QAC界面

自動化集成本質(zhì)上是一個自動編譯和打包的驗證過程,借助軟件開發(fā)時使用的編譯和打包工具,對源代碼進(jìn)行編譯、鏈接、打包,提前發(fā)現(xiàn)代碼編譯過程中的編寫問題、鏈接過程中的依賴問題、打包過程中的配置等問題。

在汽車行業(yè)中,不同的目標(biāo)平臺往往需要不同的編譯器,這也導(dǎo)致了編譯器工具非常多,如常用的HighTec、Tasking、Greenhills 等。同時,車載軟件的復(fù)雜性也導(dǎo)致了編譯環(huán)境非常復(fù)雜。在持續(xù)集成(CI) 中,編譯過程的自動化是可以比較輕松地去實現(xiàn)的,而復(fù)雜的編譯環(huán)境適配才是持續(xù)集成(CI)在車載 軟件編譯環(huán)節(jié)中需要重點關(guān)注的事情。

分享到:
 
反對 0 舉報 0 收藏 0 評論 0
滬ICP備11026917號-25