| | |
|---|
Sonarcloud / Sonarsource SA (技術債務分析) | | |
Jprofiler / EJ技術GMBH (關於分析:Java Profiler工具) | | |
github動作 (Windows&Linux CI/CD) |  | 您可以從這裡下載最新的快照。 |
Sonarqube C ++社區插件( CXX插件)
Sonarqube是管理代碼質量的開放平台。該插件為Sonarqube添加了C ++支持,重點是集成現有的C ++工具。
讀取報告的傳感器可以與此CXX插件或SonarcFamily插件一起使用。
執照
該插件是免費軟件;您可以根據自由軟件基金會發布的GNU較少的通用公共許可證的條款對其進行重新分配和/或修改它;許可證的版本3,或(您可以選擇)任何以後的版本。
特徵
- 解析器支持
C++03 , C++11 , C++14 , C++17 , C++20 , C++23-
C89 , C99 , C11 , C17
- 編譯器特定擴展
- Microsoft擴展:
C++/CLI , Attributed ATL - GNU擴展
CUDA擴展
- Microsoft Windows和Linux用於運行時環境
靜態和動態代碼分析的傳感器:
- CPPCHECK警告支持(http://cppcheck.sourceforge.net/)
- Sonar.cxx.cppcheck.Reportpath
- GCC/G ++警告支持(https://gcc.gnu.org/)
- Visual Studio和核心指南檢查器警告支持(https://www.visualstudio.com/)
- Clang靜態分析儀支持(https://clang-analyzer.llvm.org/)
- sonar.cxx.clangsa.Reportpath
- Clang-Tidy警告支持(http://clang.llvm.org/extra/clang-tidy/)
- sonar.cxx.clangtidy.Reportpath
- 推斷警告支持(https://fbinfer.com/)
- Sonar.cxx.infer.Reportpath
- PC-LINT警告支持(http://www.gimpel.com/)
- Sonar.cxx.pclint.Reportpath
- 老鼠(https://github.com/andrew-d/rough-aughiting-tool-tool-for-security)
- sonar.cxx.rats.Recorpaths
- Valgrind (http://valgrind.org/)
- Sonar.cxx.Valgrind.Reportpath
- Vera ++ (https://bitbucket.org/verateam/vera/wiki/home)
- Sonar.cxx.vera.Reportpath
- 記憶警告博士支持(http://drmemory.org/)
- Sonar.cxx.drmemory.Reportpath
- 通用問題導入格式支持
- 任何其他工具都可以集成:
- 通用問題導入格式支持
- 從SARIF報告中進口問題
- Sonar.cxx.other.Reportpath
測試框架傳感器:
- Xunit文件格式
- Sonar.cxx.xunit.Reportpath
- Google測試(GTEST)文件格式(https://github.com/google/googletest)
- Sonar.cxx.xunit.Reportpath
- boost.test文件格式(https://www.boost.org/doc/libs/release/ribs/libs/test/)
- sonar.cxx.xunit.sonar.cxx.xslt
- ctest(cmake)文件格式(https://cmake.org/cmake/help/latest/manual/manual/ctest.1.html)
- sonar.cxx.xunit.Sonar with ctest選項
--output-junit <file>
- cpptest文件格式(https://cpptest.sourceforge.io/)
- sonar.cxx.xunit.sonar.cxx.xslt
- cppunit文件格式(https://sourceforge.net/projects/cppunit/)
- sonar.cxx.xunit.sonar.cxx.xslt
- vstest文件格式(https://github.com/microsoft/vstest)
- Sonar.cxx.vstest.Reportpath
- Nunit文件格式(https://nunit.org/)
- Sonar.cxx.nunit.Reportpath
- 任何其他工具都可以集成:
- 通用測試執行報告格式支持
- 可以通過XLST:Sonar.cxx.xslt進行改編
覆蓋範圍傳感器:
- Visual Studio Coverage Reports(https://www.visualstudio.com/)
- Sonar.CXX.VScoverageXMl.Reportpath
- Bullseyecoverage報告(http://www.bullseye.com/)
- Sonar.cxx.Bullseye.Reportpath
- Cobertura報導報告(http://cobertura.github.io/cobertura/)
- GCOV/GCOVR覆蓋範圍報告帶有選項
--xml https://gcovr.com/en/stable/guide.html - 帶有選項的OpenCppCoverage
--export_type=cobertura (https://github.com/opencpppcoverage/opencpppcoverage/) - Sonar.cxx.cobertura.Reportpath
- testwell CTC ++覆蓋範圍報告(https://www.verifysoft.com/en_ctcpp.html)
- Sonar.cxx.ctctxt.Reportpath
- 任何其他工具都可以集成:
- 通用測試覆蓋報告格式支持
- 可以通過XLST:Sonar.cxx.xslt進行改編
易於自定義
- 可以通過正則表達模板進行自定義規則
- X Path模板規則的自定義規則可能
- 使用自定義規則擴展CXX存儲庫
- 與XML規則定義的簡易第三方工具集成和報告可能
- Sonar.cxx.other.Reportpath
- 提供添加自定義規則的能力
- 在Java中編寫Sonarqube插件,該插件使用Sonarqube API添加新規則
Quickstart
- 設置Sonarqube實例
- 安裝插件
- 進行分析
資源
貢獻
歡迎您貢獻。需要幫助。
替代方案
當您在Sonarqube尋找C ++支持時,這也不是唯一的選擇
- 來自Sonarsource的商業聲卡插件
- 來自CPPD的商業C/C ++插件
- 商業PVS-Studio插件
- 封面插件
選擇適合您需求的任何東西。