Скажи говнокоду нет! Sonar как генератор задач для регулярного рефакторинга

от автора

Простая и короткая статья. Из серии «на заметку хозяйке».

Есть гибкая система сканирования кода на соответствие правилам, метрикам (полезным, типа цикломатической сложности), и так далее.
Называется Sonar.

Краткий обзор возможностей

  • Поддерживает основные языки (Java, PHP, etc)
  • Имеет гибкую настраиваемую систему правил сканирования кода
  • Понимает ООП (цикломатическая сложность, количество уровней наследования, связанность, и так далее)
  • Настраивается за полдня
  • Интегрируется с TeamCity
  • Позволяет видеть изменения после рефакторинга (хранит лог изменений)

Пара скриншотов на живых данных под катом.

Применяется просто
1. Сонар натравливается на проект
2. Даете список самых косячных классов на рефакторинг (да, рефакторинг обязателен и нужно давать на него время, иначе однажды вы, как менеджер проекта, услышите волшебные слова «проще все выбросить и переписать заново» — если у вас смелые и классные программисты, или же просто будут все делать тормозно и с кучей багов в неожиданных местах, если проггеры слабоватые или несмелые).
3. Программисты рефакторит
4. Натравливаете снова и видите дельту.

Общий вид для проектов

Список косяков

Срез между двумя сканами

На Хабре были статьи, но давно, и для Java в основном.

В комментариях предлагаю поделиться средствами автоматизации QA, которые применяете вы у себя.

ссылка на оригинал статьи http://habrahabr.ru/post/213985/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *