持續(xù)集成(Continuous Integration,簡稱CI)是一種軟件開發(fā)/測(cè)試方法。它要求開發(fā)及測(cè)試人員頻繁地將代碼提交到用于共享的開發(fā)分支中,經(jīng)過充分的測(cè)試和審查,然后通過自動(dòng)化的構(gòu)建和測(cè)試流程,對(duì)代碼進(jìn)行構(gòu)建、單元測(cè)試、集成測(cè)試等步驟以確保代碼的質(zhì)量和可交付性。早在2000年代初,就有主機(jī)廠及零部件供應(yīng)商開始嘗試通過持續(xù)集成來提升軟件開發(fā)效率和質(zhì)量。而在競爭愈發(fā)激烈、整車集成化趨勢(shì)愈加凸顯的當(dāng)下,二者都認(rèn)識(shí)到提升軟件開發(fā)效率和質(zhì)量的重要性。他們深刻的明白為了快速響應(yīng)市場需求和用戶反饋,同時(shí)盡可能避免缺陷和故障,一個(gè)高效可靠的持續(xù)集成流程是必須的。因此,持續(xù)集成在汽車軟件測(cè)試行業(yè)的重要性自是不言而喻。Jenkins作為最具代表性,市場占比最高的開源CI工具,在構(gòu)建持續(xù)集成流程方面發(fā)揮了重要作用。通過使用Jenkins,可以輕松地集成其他各式工具,自動(dòng)構(gòu)建、執(zhí)行測(cè)試流程。Jenkins 還提供了靈活且豐富的插件系統(tǒng),允許用戶根據(jù)需要去定制專屬的工作流程。
在這樣的背景下,VectorCAST作為Vector公司旗下基于V模型開發(fā)的C/C++代碼動(dòng)態(tài)測(cè)試工具,也針對(duì)Jenkins開發(fā)了自己的插件,使其能夠與Jenkins進(jìn)行無縫集成。通過使用VectorCAST和Jenkins進(jìn)行集成測(cè)試,無需啟動(dòng)客戶端便可便捷快速的完成自動(dòng)測(cè)試及增量回歸測(cè)試,得到完整的測(cè)試結(jié)果報(bào)告。那么接下來就為大家介紹如何在Jenkins上完成對(duì)VectorCAST工程的持續(xù)集成。
集成準(zhǔn)備工作
一、VectorCAST工程配置當(dāng)我們想在Jenkins上執(zhí)行VectorCAST工程時(shí),我們首先需要有一個(gè)完整的VectorCAST工程,包含四個(gè)部分,即編譯器、測(cè)試套件、組和環(huán)境。
在完成于VectorCAST工具上的測(cè)試項(xiàng)目創(chuàng)建后(具體操作方式請(qǐng)查看上方視頻,得到工程對(duì)應(yīng)的vcm文件:
二、Jenkins配置
在網(wǎng)頁端打開Jenkins,通過Jenkins的Manage Jenkins Plugins Available plugins搜索安裝VectorCAST對(duì)應(yīng)的兩個(gè)可安裝插件:
通過Jenkins的節(jié)點(diǎn)管理Manage Jenkins Nodes來創(chuàng)建執(zhí)行項(xiàng)目所用的節(jié)點(diǎn)并設(shè)置節(jié)點(diǎn)并發(fā)數(shù)。節(jié)點(diǎn)是用來執(zhí)行構(gòu)建任務(wù)的工作機(jī)器或服務(wù)器,我們可以自由選擇創(chuàng)建在主機(jī)或虛擬機(jī)中,通過在Jenkins中配置和管理節(jié)點(diǎn),可以實(shí)現(xiàn)分布式構(gòu)建和部署,通過將任務(wù)分配到不同的節(jié)點(diǎn)上并行執(zhí)行,來提高構(gòu)建和部署的效率;而并發(fā)數(shù)應(yīng)選擇設(shè)置為大于等于當(dāng)前項(xiàng)目的環(huán)境數(shù),否則會(huì)導(dǎo)致當(dāng)前項(xiàng)目沒有可用的節(jié)點(diǎn)致使執(zhí)行停止:
回到Jenkins主頁面選擇VectorCAST,我們便可以看到現(xiàn)在可通過Create Single Job或是Create Jenkins Pipeline來創(chuàng)建任務(wù),在Jenkins中,Single Job和Pipeline Job都可以完成同樣的構(gòu)建過程與結(jié)果,而Pipeline Job更適合多個(gè)測(cè)試環(huán)境下需要節(jié)省時(shí)間并行執(zhí)行的項(xiàng)目,且對(duì)于Pipeline Job,我們不需要單獨(dú)去編寫pipeline腳本,VectorCAST插件會(huì)自動(dòng)生成pipeline腳本來幫助我們更快速便捷的構(gòu)建Jenkins工程:
Jenkins Job創(chuàng)建
我們選擇任一Jenkins Job,開始對(duì)相應(yīng)的VectorCAST工程進(jìn)行配置,配置選項(xiàng)除以下提及外皆選擇默認(rèn)即可。
在Project Path處選擇我們項(xiàng)目的vcm文件的路徑,如是本地則選擇其絕對(duì)路徑,如使用Git庫/SVN拉取文件則轉(zhuǎn)為選擇相對(duì)路徑:
Node Label處填入此前創(chuàng)建好的節(jié)點(diǎn)名稱:
Job Options處選擇為當(dāng)下創(chuàng)建的任務(wù)命名,此處也可保持空白,插件會(huì)根據(jù) vcm 文件的名字自動(dòng)命名:
在接下來的Scripts腳本處可用于定義 Windows及Unix(根據(jù)實(shí)際使用的系統(tǒng)而定)的腳本命令。我們可以通過定義環(huán)境變量或調(diào)用批處理文件來設(shè)置環(huán)境腳本命令。當(dāng)我們的工程是通過交叉編譯鏈進(jìn)行編譯的,那么就可以將相應(yīng)的環(huán)境配置或是批處理腳本填入此處:

當(dāng)我們需要從Git庫/SVN檢出文件時(shí),我們可以通過SCM項(xiàng)進(jìn)行關(guān)聯(lián):Single Job:
Pipeline Job:
在我們完成對(duì)于Jenkins Job的配置后,選擇Create即可完成Jenkins Job的創(chuàng)建。
執(zhí)行并查看結(jié)果
選擇我們上面創(chuàng)建好的Jenkins Job,通過Build Now執(zhí)行當(dāng)前任務(wù)。
Jenkins的自身特性會(huì)在任務(wù)執(zhí)行過程中實(shí)時(shí)監(jiān)控并進(jìn)行記錄,通過點(diǎn)擊執(zhí)行進(jìn)度條進(jìn)入控制臺(tái)查看實(shí)時(shí)執(zhí)行進(jìn)度:
待執(zhí)行完成后便可查看執(zhí)行結(jié)果,VectorCAST插件同樣會(huì)生成通過工具執(zhí)行結(jié)果所得的相應(yīng)報(bào)告:
同時(shí)我們也可以檢查這個(gè)工程的測(cè)試用例的執(zhí)行情況及整體的覆蓋度情況:
對(duì)于Pipeline Job,我們還可以通過階段視圖與Blue Ocean來幫助我們更清晰的認(rèn)知到每一階段的執(zhí)行情況:
以上就是我們通過Jenkins集成VectorCAST的全部內(nèi)容,而除此之外,我們還提供基于腳本的方案來助力自動(dòng)化整個(gè)測(cè)試流程。相較于需要手動(dòng)進(jìn)行配置的插件。腳本方案可以更加便捷靈活的完成適配工程,執(zhí)行測(cè)試,報(bào)告生成并通知的全自動(dòng)化流程。如果您對(duì)這方面感興趣或是有任何需求,請(qǐng)隨時(shí)與我們?nèi)〉寐?lián)系,我們很樂意與您進(jìn)行詳細(xì)討論。
總結(jié)
目前,持續(xù)集成在汽車軟件測(cè)試行業(yè)已經(jīng)成為一種必要的實(shí)踐。許多的汽車公司都建立了專門的持續(xù)集成流程,來管理和執(zhí)行軟件的構(gòu)建、部署、測(cè)試和監(jiān)控等活動(dòng)。同時(shí),也另有一些新興的技術(shù)和工具,如云計(jì)算、微服務(wù)架構(gòu)、DevOps實(shí)踐等,為持續(xù)集成提供了更多的可能性和挑戰(zhàn)。
對(duì)于VectorCAST來說,它不僅僅在持續(xù)集成領(lǐng)域提供了卓越的支持,還可以通過與Docker集成來提供更靈活的測(cè)試環(huán)境,VectorCAST還支持與多種需求管理服務(wù)器(如Polarion、CodeBeamer等)進(jìn)行集成。同時(shí),VectorCAST還提供了整個(gè)測(cè)試過程的命令行接口,并支持自定義生成報(bào)告等多種功能。
如果您想了解更多有關(guān)信息請(qǐng)聯(lián)系北匯信息,北匯信息作為Vector公司的中國合作伙伴,擁有專業(yè)的VectorCAST測(cè)試服務(wù)團(tuán)隊(duì),可為您提供周全完整的研發(fā)、測(cè)試解決方案及優(yōu)質(zhì)的技術(shù)支持服務(wù)。
-
測(cè)試
+關(guān)注
關(guān)注
9文章
6201瀏覽量
131345 -
軟件
+關(guān)注
關(guān)注
69文章
5332瀏覽量
91575 -
Vector
+關(guān)注
關(guān)注
3文章
99瀏覽量
10025
發(fā)布評(píng)論請(qǐng)先 登錄
鴻利智匯榮獲2025年度廣州花都高質(zhì)量發(fā)展“蛟龍榜”科技創(chuàng)新企業(yè)獎(jiǎng)
廣電計(jì)量榮獲番禺區(qū)高質(zhì)量發(fā)展企業(yè)服務(wù)先進(jìn)集體
廣汽集團(tuán)召開2026年高質(zhì)量發(fā)展大會(huì)
聯(lián)合光電榮獲2025巢湖上市公司高質(zhì)量發(fā)展大會(huì)科技創(chuàng)新獎(jiǎng)
廣電計(jì)量創(chuàng)新服務(wù)體系助力商業(yè)航天高質(zhì)量發(fā)展
PCBA工程師必看:高質(zhì)量BOM的5個(gè)‘隱形規(guī)則’
標(biāo)貝科技參編《人工智能高質(zhì)量數(shù)據(jù)集建設(shè)指南》
索尼重載設(shè)備的高質(zhì)量遠(yuǎn)程制作方案和應(yīng)用(2)
索尼重載設(shè)備的高質(zhì)量遠(yuǎn)程制作方案和應(yīng)用(1)
大模型時(shí)代,如何推進(jìn)高質(zhì)量數(shù)據(jù)集建設(shè)?
從芯片到主板,科技創(chuàng)新實(shí)現(xiàn)高質(zhì)量發(fā)展
京微齊力榮登中國半導(dǎo)體行業(yè)高質(zhì)量發(fā)展創(chuàng)新成果榜單
新思科技賦能集成電路專業(yè)高質(zhì)量發(fā)展
力合微電子榮獲2024年度深圳市集成電路產(chǎn)業(yè)高質(zhì)量發(fā)展獎(jiǎng)
高質(zhì)量持續(xù)集成:VectorCAST與Jenkins實(shí)戰(zhàn)指南
評(píng)論