Вопрос

Есть ли у Ruby какие-либо инструменты, подобные пиллинт для анализа исходного кода на наличие ошибок и простых стандартов кодирования?

Было бы неплохо, если бы его можно было интегрировать с cruisecontrolrb круизный контроль для непрерывной интеграции.

Или все пишут такие хорошие тесты, что им не нужны средства проверки исходного кода!

Это было полезно?

Решение

Я просмотрел несколько инструментов Ruby, доступных здесь

http://devver.wordpress.com/2008/10 / 03 / рубин-инструменты-облава /

большинство инструментов было упомянуто вебматом, но если вам нужна дополнительная информация, я приведу довольно подробные примеры.

Я также настоятельно рекомендую использовать Metric-Fu, так как он дает вам возможность установить три наиболее популярных инструмента на основе gem / plugin и построен с учетом интеграции с cruisecontrolrb.

Создатель имеет отличный пост, который поможет вам быстро приступить к работе.

http: //jakescruggs.blogspot. ком / 2008/04 / DEAD-простых рельсы-метрика-с-metricfu.html

В последнее время в инструментах Ruby было много активности, что, на мой взгляд, является хорошим признаком растущего и зрелого языка.

Другие советы

Посмотри на это:

  • на Рубине Внутри, статья о Полотенчике, Флае и Обезьяне, все инструменты для поиска дублирования кода
  • вонючий:детектор запаха кода для Ruby
  • Руди:проверяет стиль вашего кода Ruby
  • выпороть:анализатор сложности кода
  • rcov:даст вам C0 (если я правильно помню) анализ покрытия кода.Но все же будь осторожен.100% покрытие обходится очень дорого и не означает идеального кода.
  • хекл:тонко изменяет ваш код и запускает ваш набор тестов, чтобы посмотреть, улавливает ли он его.Жестокий :-)

Поскольку все они являются инструментами командной строки, все они могут быть интегрированы просто как задачи cc.rb.Просто используйте свой навык регулярного выражения, чтобы выбрать важную часть результата.

Я рекомендую вам сначала опробовать их вручную, чтобы увидеть, хорошо ли они сочетаются с вашей кодовой базой и нравится ли вам информация, которую они вам предоставляют.Как только вы найдете несколько, которые принесут вам пользу, потратьте время на их интеграцию в свой cc.

Один недавно обновленный интересный инструмент - это объектно-ориентированный инферометр Ruby - для краткости - roodi. Это на v1.3.0, так что я предполагаю, что это довольно зрелый.

Я сам не пробовал, потому что мой код, конечно, уже безупречен (ха).

Что касается тестового покрытия (о, дорогой, я тоже не пробовал), есть rcov

Кроме того (посмотрите, я определенно собираюсь попробовать некоторые из них сегодня. По крайней мере, один), вы можете взглянуть на flog and flay для другой проверки стиля и поиска кандидатов на рефакторинг.

Есть также встроенные предупреждения, которые можно быстро включить:

ruby -w

Или задайте для глобальной переменной $ VERBOSE значение true в любой точке.

Показатели кода на веб-сайте ruby.

Rubocop - широко используемый статический анализатор кода.

Я только что выпустил Отлично, в котором реализовано несколько проверок кода Ruby. Он объединяет roodi, reek и flog, а также добавляет некоторые специфичные для Rails проверки:

gem sources -a http://gems.github.com
sudo gem install simplabs-excellent

Может быть полезно ...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top