人妻蜜と1~4中文字幕月野定规 ,国产精品成人va在线播放,色优久久久久综合网鬼色,WWW插插插无码视频网站

【Perforce】Helix QAC-規(guī)則包管理

一、 文檔目標(biāo)

本文以M3CM工程為例,記錄Helix QAC 如何進(jìn)行規(guī)則的配置,對(duì)細(xì)節(jié)進(jìn)行詳細(xì)說明,方便后續(xù)快速進(jìn)行工程的基本分析和配置。記錄在同步過程中遇到的問題,并提出解決方案。


二、軟件環(huán)境

1)、軟件版本:

Helix QAC 2024.2

Validate2024.2

M3CM_Examples-5.5.0


三、Helix QAC示例項(xiàng)目分析

1)、首先進(jìn)入軟件界面,點(diǎn)擊“Project-Open Project...”,打開 Helix QAC 增購MISRA C2012 的M3CM_Examples工程.

本例中默認(rèn)路徑為:(注:不同版本規(guī)則的Examples均有不同,選擇對(duì)應(yīng)軟件版本的規(guī)則包即可)

C:PerforceM3CM-5.5.0samplesM3CM_Examples



2)、選擇該路徑下的.xml文件即可,打開示例工程后進(jìn)行基本的項(xiàng)目配置。


3)、點(diǎn)擊“齒輪”,進(jìn)入設(shè)置的配置界面。



4)、進(jìn)入“Project Properties“ 界面

1.點(diǎn)擊"Import"可添加其他ACF文件,進(jìn)行其他規(guī)則包的添加。




2.點(diǎn)擊“Export"可以將目前使用Analysis Toolchain的配置文件進(jìn)行保存為.acf格式進(jìn)行輸出、方便公司內(nèi)部自定義規(guī)則的保存和傳閱。


3.點(diǎn)擊”Clear“即清除目前導(dǎo)入的Analysis Toolchain工具包,方便快速重新構(gòu)建工具鏈




4.默認(rèn)情況下,面板中已提供主要分析器,例如?Helix QAC for C?和?Helix QAC for C++?(qac 11.6.0qacpp 6.6.0)。輔助分析組件位于左側(cè)的Available Comonents窗口中,如果組件需要成為當(dāng)前分析的一部分,則可以使用“>”按鈕將其添加到Analysis Toolchain中;相反,可以使用“<” 按鈕將其刪除。



配置完成后點(diǎn)擊”Save“即可。

5)、點(diǎn)擊進(jìn)入“Rule Configuration”,這里可以看到我們剛剛選擇的M3CM的具體細(xì)則,規(guī)則檢查需要報(bào)出哪些消息。RCF文件也支持Import導(dǎo)入、Export 導(dǎo)出、Clear清除等相應(yīng)操作。



1.選擇CMN-0.1的注釋分析,對(duì)于qac-4810這條消息我們需要抑制,點(diǎn)擊鼠標(biāo)右鍵,選擇Disable selected。該消息不會(huì)在注釋部分進(jìn)行檢測(cè)。



2.若此處我們選擇Remove selected/Remove all,消息不會(huì)再出現(xiàn)在m3cm-5.50-en_US.rcf文件內(nèi),該操作不可逆,請(qǐng)慎重移除。


注:Helix QAC默認(rèn)規(guī)則包嚴(yán)格執(zhí)行相應(yīng)的測(cè)試標(biāo)準(zhǔn),部分消息若在實(shí)際測(cè)試中對(duì)系統(tǒng)代碼運(yùn)行可忽略,可在此處進(jìn)行抑制,該消息不會(huì)再檢測(cè),減少對(duì)消息的二次排查,可根據(jù)需求進(jìn)行rcf文件的修改和保存。


6)、以MISRA 2012 C C為例,規(guī)則包為本例中的M3CM,在下方我們可以看到有不同語言的標(biāo)準(zhǔn)的測(cè)試。針對(duì)C99、C90特殊的語法區(qū)別,具有不同的規(guī)則進(jìn)行檢測(cè)。

1.我們可以選中相應(yīng)的規(guī)則主體,右鍵點(diǎn)擊,選擇“Enable"使能和”Disable“抑制。



2.選擇相應(yīng)規(guī)則文件夾,右鍵選擇”Edit“或者”New Rule“進(jìn)行對(duì)規(guī)則的編輯和創(chuàng)建。Active是否勾選決定該規(guī)則集是否使能,Rule ID決定該規(guī)則的號(hào)碼,Rule text添加該規(guī)則集的描述,Rule Help設(shè)定系統(tǒng)配置文件,Categories設(shè)置規(guī)則類別,在Categories界面以設(shè)定類別進(jìn)行分類。在該對(duì)話框中保存的更改將在分析后反映在?Rule Groups?面板中。



3.選擇相應(yīng)規(guī)則文件夾,右鍵選擇”Remove“進(jìn)行對(duì)規(guī)則的移除,該操作不可逆。移除后只能手動(dòng)恢復(fù)。


4.選擇相應(yīng)規(guī)則文件夾,右鍵選擇”Message“進(jìn)行消息的添加,假設(shè)我知曉需要的Message號(hào)末尾為19,在搜索欄搜索相應(yīng)的關(guān)鍵字,找到需要的規(guī)則消息,勾選后點(diǎn)擊OK,保存至該規(guī)則集內(nèi)。



7)、保存配置后,點(diǎn)擊分析,我們可以看到成功分析,進(jìn)入Rule Group,在此處我們可以看到在“Rule Configuration”中設(shè)置的抑制信息均會(huì)在這里顯示,具體到消息??煽焖龠M(jìn)行消息的實(shí)用性進(jìn)行判斷,記錄消息和規(guī)則位置,方便后續(xù)進(jìn)行抑制。


五、討論

1. 對(duì)于不同的語言標(biāo)準(zhǔn),Helix QAC的建議是?

如果客戶使用的C ++11,Helix QAC建議使用HICPP 進(jìn)行規(guī)則檢查。

如果客戶使用的C++14,Helix QAC建議客戶使用Autosar?C++14進(jìn)行規(guī)則檢查。

如果客戶使用的C++17,Helix QAC建議客戶使用MISRA C++2023進(jìn)行規(guī)則檢查。


2. ACF文件是什么?

在Helix QAC(原PRQA)中,ACF文件全稱為“Analysis Configuration File”,即分析配置文件。它是用來定義Helix QAC分析過程中使用的設(shè)置和選項(xiàng)的文件。ACF文件允許用戶配置分析工具的各種參數(shù),包括選擇哪些檢查規(guī)則集(rules sets)應(yīng)用于代碼分析,以及如何報(bào)告結(jié)果等。


3. RCF文件是什么?

在Helix QAC(原PRQA)中,RCF文件全稱為“Rule Configuration File”,即規(guī)則配置文件。RCF文件用于定義特定的規(guī)則集和規(guī)則配置,它允許用戶啟用或禁用特定的規(guī)則或消息,以及設(shè)置規(guī)則的嚴(yán)重性級(jí)別。這樣,用戶可以根據(jù)項(xiàng)目需求和偏好來定制靜態(tài)代碼分析的規(guī)則檢查,從而優(yōu)化分析過程并減少誤報(bào)。


六、總結(jié)

Helix QAC的ACF(Analysis Configuration File)和RCF(Rule Configuration File)分別用于定制分析行為和規(guī)則配置。ACF允許用戶設(shè)置宏定義和頭文件路徑,而RCF則用于啟用或禁用特定規(guī)則。對(duì)于客戶而言,它們的價(jià)值在于能夠確保代碼分析的準(zhǔn)確性,減少誤報(bào),提高代碼質(zhì)量和安全性,以及優(yōu)化開發(fā)流程。

本例以M3CM為例講解如何配置"ACF和RCF"文件,減少