Metric_fu : 静态代码检查工具。详细资料见: http://metric-fu.rubyforge.org/
它包括以下 10 种工具:
Churn ——文件被改动的次数,频繁度。
Rcov ——代码覆盖范围。
Stats ——代码量信息的统计,包括行数、类数、方法数等。
Rails Best Practices report —— Bullet 插件的作者黄志敏( flyerhzm )根据 ihower 演讲的内容,制作了一个能够自动检查违背最佳实践代码的 Gem ,名为 rails_best_practices.
Roodi ( Ruby 面向对象设计 Inferometer ) —— 该工具会解析你的 Ruby 代码,并根据你配置好的列表,对设计方面的问题提出警告,比如:类代码行数检查、 for 循环检查、参数个数检查、圈复杂度检查,还有其他 10 个检查选项。
Reek —— 类似 Roodi 。
Saikuro —— 设计目的是要检查 圈复杂度 。
Flog —— 由 Ryan Davis 开发,它会给你的代码计算一个得分:得分越高,你的代码越差。计算得分时考虑了 ABC 度量指标(赋值、分支和调用)。
Flay —— 这是 Ryan Davis 开发的另一个免费工具,能够找到代码中在结构上的相似性。
Hotspots ——将 Flog, Flay, Rcov, Reek, Roodi 和 Churn 的报告结果整合起来的一种工具。
要想使用所有这些工具,你很快就会觉得痛苦,这时 metric_fu 就成了 救星 。它能够方便地生成关于你的应用的报告。很容易就能把它和 Rails 集成在一起,而且花些时间就能生成图表。
配置方法:
1.gem install metric_fu
2. 在 Gemfile 文件中添加 gem 'metric_fu' 一行代码
3. 控制台下 rake metrics:all
4. 在工程的 tmp 文件夹下查看生成的 .html 文件图表。