| | |
|---|
Sonarcloud / Sonarsource SA (기술 부채 분석) | | |
JPROFILER / EJ-TECHNOLOGIES GMBH (프로파일 링에 관해서는 : Java Profiler 도구) | | |
Github 동작 (Windows & Linux CI/CD) |  | 여기에서 최신 스냅 샷을 다운로드 할 수 있습니다. |
Sonarqube C ++ 커뮤니티 플러그인 ( CXX 플러그인 )
Sonarqube는 코드 품질을 관리하는 개방형 플랫폼입니다. 이 플러그인은 기존 C ++ 도구의 통합에 중점을 둔 Sonarqube에 C ++ 지원을 추가합니다.
읽기 보고서를위한 센서는이 CXX 플러그인 또는 Sonarcfamily 플러그인과 함께 사용할 수 있습니다.
특허
이 플러그인은 무료 소프트웨어입니다. Free Software Foundation에서 게시 한 GNU Lesser General Public License의 조건에 따라 재분배하거나 수정할 수 있습니다. 라이센스의 버전 3 또는 이후 버전의 버전 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.reportpaths
- GCC/G ++ 경고 지원 (https://gcc.gnu.org/)
- sonar.cxx.gcc.reportpaths
- Visual Studio 및 Core Guideline Checker 경고 지원 (https://www.visualstudio.com/)
- Clang 정적 분석기 지원 (https://clang-analyzer.llvm.org/)
- sonar.cxx.clangsa.reportpaths
- Clang-tidy 경고 지원 (http://clang.llvm.org/extra/clang-tidy/)
- sonar.cxx.clangtidy.reportPaths
- 추론 경고 지원 (https://fbinfer.com/)
- sonar.cxx.infer.reportPaths
- PC-Lint 경고 지원 (http://www.gimpel.com/)
- sonar.cxx.pclint.reportPaths
- 쥐 (https://github.com/andrew-d/rough-auditing-tool-for-security)
- sonar.cxx.rats.reportPaths
- Valgrind (http://valgrind.org/)
- sonar.cxx.valgrind.reportPaths
- Vera ++ (https://bitbucket.org/verateam/vera/wiki/home)
- sonar.cxx.vera.reportPaths
- Dr. Memory 경고 지원 (http://drmemory.org/)
- sonar.cxx.drmemory.reportpaths
- 일반적인 이슈 수입 형식 지원
- 다른 도구를 통합 할 수 있습니다.
- 일반적인 이슈 수입 형식 지원
- SARIF 보고서에서 문제를 가져옵니다
- sonar.cxx.other.reportpaths
테스트 프레임 워크 센서 :
- xunit 파일 형식
- sonar.cxx.xunit.reportPaths
- Google Test (Gtest) 파일 형식 (https://github.com/google/googletest)
- sonar.cxx.xunit.reportPaths
- boost.test 파일 형식 (https://www.boost.org/doc/libs/release/libs/test/)
- sonar.cxx.xunit.reportpaths sonar.cxx.xslt
- ctest (cmake) 파일 형식 (https://cmake.org/cmake/help/latest/manual/ctest.1.html)
- sonar.cxx.xunit.ctest 옵션을 사용한
--output-junit <file>
- cpptest 파일 형식 (https://cpptest.sourceforge.io/)
- sonar.cxx.xunit.reportpaths sonar.cxx.xslt
- cppunit 파일 형식 (https://sourceforge.net/projects/cppunit/)
- sonar.cxx.xunit.reportpaths sonar.cxx.xslt
- vstest 파일 형식 (https://github.com/microsoft/vstest)
- sonar.cxx.vstest.reportpaths
- nunit 파일 형식 (https://nunit.org/)
- sonar.cxx.nunit.reportPaths
- 다른 도구를 통합 할 수 있습니다.
- 일반 테스트 실행 보고서 형식 지원
- xlst를 통해 가능한 적응 : sonar.cxx.xslt
적용 범위 센서 :
- Visual Studio Coverage Reports (https://www.visualstudio.com/)
- sonar.cxx.vscoveragexml.reportpaths
- Bullseyecoverage Reports (http://www.bullseye.com/)
- sonar.cxx.bullseye.reportpaths
- Cobertura Coverage Reports (http://cobertura.github.io/cobertura/)
- 옵션
--xml https://gcovr.com/en/stable/guide.html 옵션이있는 gcov/gcovr 커버리지 보고서 - OpencppCoverage 옵션
--export_type=cobertura (https://github.com/opencppcoverage/opencppcoverage/) - sonar.cxx.cobertura.reportpaths
- Testwell CTC ++ 적용 범위 보고서 (https://www.verifysoft.com/en_ctcpp.html)
- sonar.cxx.ctctxt.reportPaths
- 다른 도구를 통합 할 수 있습니다.
- 일반 테스트 범위 보고서 형식 지원
- xlst를 통해 가능한 적응 : sonar.cxx.xslt
사용자 정의하기 간단합니다
- 정규 표현식 템플릿에 의한 사용자 정의 규칙
- XPath 템플릿 규칙에 의한 사용자 정의 규칙 가능
- 사용자 정의 규칙으로 CXX 저장소를 확장하십시오
- XML 규칙 정의 및 보고서와 쉬운 타사 도구 통합 가능
- sonar.cxx.other.reportpaths
- 사용자 정의 규칙을 추가 할 수있는 기능을 제공하십시오
- Sonarqube API를 사용하여 새로운 규칙을 추가하는 Java에서 Sonarqube 플러그인 작성
QuickStart
- Sonarqube 인스턴스를 설정하십시오
- 플러그인을 설치하십시오
- 분석을 실행하십시오
자원
- 최신 릴리스
- 최신 스냅 샷을 다운로드하십시오
- 선적 서류 비치
- 문제 추적기
기여
당신은 기여를 환영합니다. 도움이 필요합니다.
대안
Sonarqube에서 C ++ 지원을 찾을 때 유일한 선택은 아닙니다.
- Sonarsource의 상업용 Sonarcfamily 플러그인
- CPPDENCT의 상용 C/C ++ 플러그인
- 상업용 PVS-Studio 플러그인
- Coverity 플러그인
필요에 맞는 것을 선택하십시오.