когда-то понадобилось по работе. вариант
документации усечённый, ибо приведён в линейный вид по карте и по памяти, но для ознакомления вполне подходит.
0. Что это?
“Платформа Sonar представляет собой комплексное решение для отслеживания качества кода по различным параметрам: дублирование кода, его сложность, покрытие тестами, архитектура, потенциальные ошибки, соответствие стандартам кодирования, наличие комментариев. При этом собранная информация подается в доступном, удобном для восприятия виде. Платформа конфигурируема и расширяема.”
1. Как пользоваться.
1.1. основные концепции
архитектура
Sonar, как платформа, состоит из клиентской части, базы данных, серверной части и некоего блока логики - анализатора.
качество
обеспечивается такими понятиями, как
- coding rules - набор встроенных правил, по которому оценивается качество кода
- metric. бывают количественными (покрытие тестами, плотность повторяющихся строк..) и качественными (количество строк кода, сложность..)
- measure - значение метрики для данного ресурса
- quality profile - набор coding rules. каждый snapshot отображает один QP
- resources - это тестируемый код. пакет/проект/модуль/файл
- snapshot - набор результатов проверки данного ресурса
- violation - нарушение. если код не удовлетворяет заданным параметрам, может быть зафиксировано в файле/юнит-тестах/пакете
элементы интерфейса
widget’s бывают глобальными и уникальными для каждого проекта
отображаемый dashboard - набор виджетов с данными из базы данных
1.2. анализ кода
Анализировать код на предмет недочетов можно начать с помощью: