code-coverage - unit - sonarqube duplicated code
¿Cuál es la diferencia entre la cobertura de código y la cobertura de línea en el sonar? (2)
Sé cuál es la diferencia entre la cobertura de línea y de sucursal, pero ¿cuál es la diferencia entre cobertura de código y cobertura de línea? ¿Es la cobertura de instrucción anterior?
La cobertura es una combinación sutil ;-) de la línea y la cobertura de la sucursal.
Puedes encontrar la fórmula en nuestra página de descripción métrica :
coverage = (CT + CF + LC)/(2*B + EL)
where
CT - branches that evaluated to "true" at least once
CF - branches that evaluated to "false" at least once
LC - lines covered (lines_to_cover - uncovered_lines)
B - total number of branches (2*B = conditions_to_cover)
EL - total number of executable lines (lines_to_cover)
Para ampliar la respuesta, solo puede consultar a la sonda para estos términos:
- condiciones para cubrir
- condiciones_cubiertas
- lineas para cubrir
- líneas descubiertas
Y luego puedes convertirte en los términos anteriores usando estas ecuaciones:
CT + CF = conditions_to_cover - uncovered_conditions
2*B = conditions_to_cover
LC = lines_to_cover - uncovered_lines
EL = lines_to_cover
Puede usar Sonar Drilldown o REST API para obtener los valores de métrica anteriores:
http://my.sonar.com/drilldown/measures/My-Project-Name?metric=line_coverage
http://my.sonar.com/api/resources?resource=55555&metrics=ncloc,conditions_to_cover,uncovered_conditions,lines_to_cover,uncovered_lines,coverage,line_coverage,branch_coverage,it_conditions_to_cover,it_uncovered_conditions,it_lines_to_cover,it_uncovered_lines,it_coverage,it_line_coverage,it_branch_coverage,overall_conditions_to_cover,overall_uncovered_conditions,overall_lines_to_cover,overall_uncovered_lines,overall_coverage,overall_line_coverage,overall_branch_coverage
Esta publicación de blog tiene información adicional: http://sizustech.blogspot.com/2015/10/making-sense-of-sonar-qube-stats-like.html