2013-10-07 7 views
5

Сонар дает значение полного покрытия, которое представляет собой комбинацию покрытия линий и филиалов. Я не уверен, насколько важна эта метрика. Какова ценность общего покрытия? Как это лучше, чем покрытие линий и филиалов? Любые предложения будут полезны.Сонар-общее покрытие

ответ

3

Вот как вычисляется общий охват: http://docs.codehaus.org/display/SONAR/Metric+definitions#Metricdefinitions-Tests

Если охват ветви ниже, чем охват линии (и, таким образом, ниже, чем общий охват), это означает, что ваши испытания модульного тестирования основных случаев, но не очень случаи угловых ,

+0

Спасибо Дэвид! Если общий охват представляет собой комбинацию охвата линий и филиалов, как добавляются эти фракции? Я все еще не уверен в различии между линией и общим покрытием, так как оба измеряют количество покрываемого кода. – Pavneet

+1

Этот ответ является неполным. Существует метка охвата, которая действительно представляет собой комбинацию покрытия линий и филиалов, как описано. Но метрика total_coverage представляет собой комбинацию охвата тестирования интеграции (it_coverage) и охвата тестирования (охвата). Если какой-либо тест охватывает линию или условие, считается, что она покрыта. – David

3

Из документации эхолота:

Это смесь покрытия линии и покрытия Состояния. Его цель - обеспечить еще более точный ответ на следующий вопрос: как часть исходного кода была покрыта модульными тестами?

Coverage = (CT + CF + LC)/(2*B + EL) 

where 

CT = conditions that have been evaluated to 'true' at least once 
CF = conditions that have been evaluated to 'false' at least once 
LC = covered lines = lines_to_cover - uncovered_lines 

B = total number of conditions 
EL = total number of executable lines (lines_to_cover) 

Источник: http://docs.sonarqube.org/display/SONAR/Metric+definitions (захваченное 23/02/2015)

Смежные вопросы