Различные способы создания эффективного конвейера Ci для анализа сонарка

Может ли кто-нибудь помочь мне настроить лучший конвейер CI для анализа исходного кода (JAVA) с использованием Sonarqube? На мой взгляд, у меня есть конвейер, например SCM-->Jenkins --->maven build-->sonarqube analysis.

Это лучшая практика? или мы можем пропустить сборку maven и просто выполнить анализ сонара SCM-->Jenkins-->sonarqube analysis. Существуют ли какие-либо другие конвейеры CI, которые являются лучшей практикой для организации, которая в основном ищет анализ кода?


person Community    schedule 20.04.2017    source источник


Ответы (1)


Поскольку вы говорите о сборке Maven, я знаю, что мы имеем дело с Java. В этом случае вы должны выполнить сборку перед анализом; большая часть анализа опирается на байт-код для глубины и точности. Если байт-код недоступен для анализатора SonarJava, вы получите много ложноотрицательных результатов.

В частности, вы получите одинаковые показатели охвата, дублирования и т. д. с байт-кодом или без него. Но без байтового кода SonarJava теряет возможность, например, посмотреть на суперкласс и понять, в каких методах отсутствует аннотация @Override.

Обновление: начиная с SonarJava версии 4.12 требуются двоичные файлы. (Дополнительные сведения см. в документации.)

person G. Ann - SonarSource Team    schedule 20.04.2017
comment
большая часть анализа основана на байт-коде для глубины и точности, не могли бы вы объяснить это немного подробнее. Спасибо @G.Ann - person ; 20.04.2017
comment
Смотрите мое расширение @pandey - person G. Ann - SonarSource Team; 20.04.2017