Helix QAC—原始碼級靜態自動化測試工具

经纬恒润發表於2024-03-15

Helix QAC概述

Helix QAC是一款原始碼級靜態自動化測試工具,主要用於C/C++程式碼的完全自動化靜態分析工作,提供一個高效、健壯和自動化的環境來引入和執行編碼標準。Helix QAC根據儘早、更頻繁測試的理念,在軟體生命週期最早期軟體開發階段應用識別缺陷,提供與功能安全及資訊保安密切相關的各類編碼規範檢測、程式碼質量度量、軟體結構分析、測試結果管理等功能。

Helix QAC能夠全面而準確地發現軟體中潛在的問題,自身符合ISO26262功能安全標準認證。適用於自動駕駛領域,保障嵌入式軟體的質量,提高其防禦駭客攻擊能力。

Helix QAC主要技術指標如下

  • 提供基於行業標準的程式設計規則對程式碼進行檢測

  • 提供對軟體的質量分析功能

  • 提供對軟體結構的分析

  • 自動進行工程資料同步

  • 提供豐富的CCT庫(輔助工程快速配置)

  • 支援測試報告生成的選項配置,並可實現報告自定製

  • 實現團隊協作

  • 功能安全手冊支援靜態專案透過各級ASIL(A-D)功能安全認證

Helix QAC產品方案

Helix QAC主要模組為QAC/QAC++(分析元件)、Dashboard(質量管理平臺)、以及常用行業規則包(如MISRA C/C++、AUTOSAR C++、CERT C/C++、CWE C/C++等)。

除此之外,還可提供與各行業標準匹配的安全手冊(如ISO 26262 Safety Manual等)。

Helix QAC主介面

  • Helix QAC分析元件


  • Dashboard平臺

核心功能

  • 多種類、覆蓋面廣的程式設計規則

Helix QAC提供與功能安全及資訊保安密切相關的各類編碼規範檢測:

Helix QAC對於各類編碼規範的對映覆蓋情況:

除此之外,Helix QAC還提供基於ISO C/C++標準制定出來的自定製規則集,可實現1900+ C語言問題、1400+ C++語言問題的檢測,避免的風險包括但不限於:

未定義的行為

ISO語言約束違反

越界及溢位 (包括除零)

未初始化的資料

記憶體/指標運算問題(包括空指標引用)

危險的語言使用

不可移植的語言使用

控制流問題

型別轉換

冗餘程式碼

移位運算

物件/函式的宣告定義問題

識別符號的命名規範

  • 自動對程式設計規則進行檢查

在工具中新增要分析的檔案,配置好完相應環境,執行一次就可以對新增的檔案進行全部的分析,執行速度快,使用過程非常簡單,容易理解,上手很快。


  • 非常友好的幫助系統

分析結果內檢查錯誤的時候,如果對所提示的內容不理解,可以雙擊這個錯誤,進入幫助系統。幫助系統除了提供了對錯誤的描述外,大多情況下都提供了例子程式,可以幫助理解錯誤的原因,並輔助開展程式碼修正。

  • 提供對軟體結構的分析

可以分析軟體的結構,包括檔案之間的包含關係、函式之間的呼叫關係以及函式自身的結構。

  • 提供對軟體的質量分析

採用國際標準的軟體質量度量方法及度量指標,對客戶的程式碼質量進行評估。提供六十餘個指標進行評估,可以方便的在各個指標之間進行切換。

另外,也可以透過警告方式直觀顯示超閾值門限的指標,並可實時追蹤至程式碼位置。

  • 自定製報告

可實現固定模板報告生成,同時也可根據使用者需求定製報告內容。可支援匯出PDF報告、HTML報告。

  • 團隊協作

可實現版本管理、基線管理、使用者管理、插入註釋功能,實現團隊協作。

  • 可持續整合

支援命令列形式執行分析,能夠實現與持續整合環境(如Jenkins等)進行整合。

資質認證證書

應用案例

經緯恆潤可提供服務項


來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/31535135/viewspace-3009135/,如需轉載,請註明出處,否則將追究法律責任。

相關文章