IT分からんわ~_~;

IT色々お勉強中のブログ

Railsアプリの循環的複雑度を測定方法

Railsアプリの循環的複雑度を測定

そのまんま

Gemfile

gem 'metric_fu'

spec/spec_helper.rb

require 'factory_bot_rails'
if ENV['RUN_COVERAGE'] == 'true'
  require 'simplecov'
  require 'metric_fu/metrics/rcov/simplecov_formatter'
  SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
    SimpleCov::Formatter::HTMLFormatter,
    SimpleCov::Formatter::MetricFu
  ]
  SimpleCov.start 'rails' do
    add_filter '/spec/'
    add_filter '/config/'
    add_filter '/vendor/'
  end
end

metricsで測定したいものを入れる

MetricFu.configuration.configure_metrics.each do |metric|
  if [:saikuro, :stats, :rails_best_practices].include?(metric.name)
    metric.enabled = true
  else
    metric.enabled = false
  end
end

circle ciに入れるならこんな感じ

      - run:
          name: RSpec tests
          working_directory: ~/hoge
          command: |
            RUN_COVERAGE=true bundle exec rspec spec

````

以上で測定可能