Rails+RSpec+SimpleCovでコードカバレッジを計測する
SimpleCovというRubyアプリケーションのコードカバレッジを計測するツールがあります。 これをRails+RSpecの環境で利用する方法について基本的なことを纏めておきます。
SimpleCov
SimpleCovは、 Rubyで書かれたコードカバレッジを計測するオープンソースのライブラリで、 MITライセンスで公開されている。
環境
ここでは、
- ruby 2.3.3(rbenv)
- rails 5.0.0.1
- rspec-rails 3.5.2
- simplecov 0.12.0
を使用。
導入
Gemfileの編集
Gemfileに以下を追加し、bundle installを実行する。
group :test do
gem 'simplecov', require: false
end
spec_helper.rbの編集
spec_helper.rbに以下を追加する。
require 'simplecov'
SimpleCov.start 'rails'
実行+レポート
あとはRSpecを実行すると、自動でカバレッジが計測され、レポートが生成される。
% bundle exec rspec
...
RSpecの結果
...
Coverage report generated for RSpec to /path/to/app/coverage. 55 / 78 LOC (70.51%) covered.
そして、`/path/to/app/coverage/index.html`を開くと、

のようなHTMLでレポートを見ることができる。
SimpleCovにはきめ細かな設定を行ってより使いやすくカスタマイズすることができます。 今回は(超)基本的な使い方だけを纏めてみました。