Sé cuál es la diferencia entre la cobertura de línea y de sucursal, pero ¿cuál es la diferencia entre la cobertura del código y la cobertura de línea? Es la cobertura de instrucción anterior?Cuál es la diferencia entre la cobertura del código y la línea en sonar
Respuesta
La cobertura es una mezcla sutil ;-) de la línea y la cobertura de la sucursal.
Puede encontrar la fórmula en nuestro metric description page:
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)
impresionante, no pude encontrar esa página a través de google ... ¡Gracias! –
Creo que debe actualizar una palabra en su URL para obtener la siguiente URL: http://docs.sonarqube.org/display/SONAR/Metric+definitions#Metricdefinitions-Tests ('sonarqube' en lugar de' codehaus') –
De hecho, ¡gracias por la notificación! Enlace actualizado –
Para ampliar la respuesta, sólo puede sonar de consulta para estos términos:
- conditions_to_cover
- uncovered_conditions
- lines_to_cover
- uncovered_lines
Y entonces usted puede encubierta a los términos anteriormente usando las ecuaciones siguientes:
CT + CF = conditions_to_cover - uncovered_conditions
2*B = conditions_to_cover
LC = lines_to_cover - uncovered_lines
EL = lines_to_cover
Puede utilizar el Drilldown sonar o del API REST para obtener los valores de la métrica anterior:
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
Este publicación de blog tiene información adicional: http://sizustech.blogspot.com/2015/10/making-sense-of-sonar-qube-stats-like.html
- 1. Cuál es la diferencia entre = y: =
- 2. ¿cuál es la diferencia entre:.! y: r !?
- 3. ¿Cuál es la diferencia entre ".equals" y "=="?
- 4. Cuál es la diferencia entre $ y jQuery
- 5. ¿Cuál es la diferencia entre dict() y {}?
- 6. ¿Cuál es la diferencia entre + = y = +?
- 7. Cuál es la diferencia entre $ (...) y `...`
- 8. ¿Cuál es la diferencia entre [indefinido] y [,]?
- 9. ¿Cuál es la diferencia entre " " y ""?
- 10. ¿Cuál es la diferencia entre .ToString (+) y ""
- 11. ¿Cuál es la diferencia entre `##` y `hashCode`?
- 12. ¿Cuál es la diferencia entre "$^N" y "$ +"?
- 13. ¿Cuál es la diferencia entre {0} y ""?
- 14. ¿Qué es la cobertura del código?
- 15. ¿Cuál es la diferencia entre el colado y la coerción?
- 16. ¿Cuál es la diferencia entre la abstracción y la encapsulación?
- 17. Cuál es la diferencia entre la función() {}() y la función() {}()
- 18. ¿Cuál es la diferencia entre el marco y la arquitectura?
- 19. ¿cuál es la diferencia entre la lex y yacc
- 20. ¿Cuál es la diferencia entre la relación Composición y Asociación?
- 21. En matplotlib, ¿cuál es la diferencia entre set_xlim y set_xbound?
- 22. Las diferencias entre la línea y la cobertura de la rama
- 23. ¿Qué es la cobertura del código y cómo lo mides?
- 24. ¿Cuál es la diferencia entre la pila del kernel y la pila del usuario?
- 25. ¿Cuál es la diferencia entre Phing y PHPUnderControl?
- 26. ¿Cuál es la diferencia entre toString y mkString en scala?
- 27. ¿Cuál es la diferencia entre el casting y la conversión?
- 28. ¿Cuál es la diferencia entre uno mismo y la ventana?
- 29. ¿Cuál es la diferencia entre STDIN y $ stdin en Ruby?
- 30. En R, ¿cuál es la diferencia entre unlink y file.remove?
la cobertura parece ser una métrica computada, que tiene en cuenta la línea y la cobertura de la sucursal. No obstante, no se puede encontrar la fórmula: D – oers
, de ahí la pregunta. Creo que es la cobertura de instrucciones, ya que una línea de código Java puede tener múltiples instrucciones, estas dos son diferentes. Tal vez haya una respuesta autorizada aquí;) –
fabrice de sonar vagabundea esta etiqueta, así que creo que obtendré alguna información :) – oers