2017-12-31 30 views
1

안녕하세요. 지원되지 않는 언어로 맞춤 플러그인을 사용하고있어 적용 범위 정보를 표시하고 싶습니다.SonarQube 일반 적용 범위 XML로 커버리지가없는 파일을 0 커버리지로 처리하는 방법은 무엇입니까?

내가 가져온 보도는 아직 모두를위한 단위 테스트가 아니기 때문에

내 커버리지 정보는 프로젝트에있는 파일의 몇을위한 속성 sonar.coverageReportPaths를 사용하여 XML 형식으로 생성.

필자가 제공 한 범위에서 전체 코드 줄 대 커버 된 줄의 백분율로 표시되는 범위 비율을 보았습니다. 코드가 각각 10 줄인 파일이 10 개가 있고 하나의 파일에 100 % 적용 범위 정보를 제공하면 전체 적용 범위가 10 % (10/100)로 표시됩니다.

대신 100 % (10/10)를 표시합니다. 즉, 포괄 정보의 파일 만 전체의 일부로 간주됩니다. 나는 그 범위가 프로젝트의 전체 코드 라인의 백분율과 같이 덮여있는 라인으로 계산 될 것이라고 추정했다. 적어도 그것이 내가 어떻게 이해하는지에 관한 것이다.

C++ 플러그인에서 sonar.cxx.coverage.forceZeroCoverage라는 속성을 발견했습니다.이 기능은 다음과 같은 것으로 간주됩니다. 즉, 적용 범위 정보가없는 원본 파일은 유용 할 것으로 생각되는 0 커버리지로 간주됩니다.

일반 범위로 사용할 수있는 비슷한 내용이 있습니까? 아니면 응용 프로그램의 다른 모든 줄이 밝혀 짐을 보여주는 범위 XML을 생성하는 방법을 찾아야합니까?

+0

이 오픈 소스 C++ 플러그인 :

다음과 같은 coverable 식별 할 수있는 라인을 결정할 때 SonarSource가 내부적으로 사용하는 가이드 라인은 무엇입니까? –

답변

1

언어 용 플러그인은 실행 파일을 구현해야합니다. 어떤 라인 덮여 있어야 식별합니다. 플랫폼은 수학과 함께 그것을 가져갈 것입니다. https://docs.sonarqube.org/display/DEV/Executable+Lines

+0

고마워, 그게 우리에게 도움이 되었어! CoreMetrics.LINES_TO_COVER 및 CoreMetrics.UNCOVERED_LINES도 발견되었지만 개별 선을 덮어 씌우지 않은 채로 색칠하지는 않았습니다. –