はじめに
SimpleCovは、Rubyのテストフレームワーク(RSpecやMinitestなど)と統合してコードカバレッジを測定するためのツールです。コードカバレッジは、テストがどの程度コードをカバーしているかを示す指標であり、テストの充実度を把握するのに役立ちます。
この記事では、RailsアプリケーションにSimpleCovを導入して、テストカバレッジを計測する手順をまとめます。
導入手順
SimpleCovをインストールする
まず、SimpleCovをGemfileに追加します。
group :test do
gem 'simplecov', require: false
end
その後、以下のコマンドでインストールを行います:
bundle install
SimpleCovを設定する
テストの実行開始時にSimpleCovを有効化する必要があります。通常はテスト設定ファイルに以下のコードを追加します。
RSpecの場合
spec/spec_helper.rbの先頭に以下を追加します:
require 'simplecov'
SimpleCov.start 'rails' do
add_filter '/bin/'
add_filter '/db/'
add_filter '/spec/'
end
これにより、Railsアプリケーション固有の設定が適用され、テスト実行時にカバレッジレポートが生成されます。
テストを実行してカバレッジレポートを生成する
SimpleCovはテストスイートの実行時にカバレッジデータを収集します。
以下のコマンドでテストを実行してください:
bundle exec rspec
テスト実行後、coverageディレクトリが作成され、その中にHTML形式のカバレッジレポートが生成されます。
カバレッジレポートを確認する
生成されたレポートはcoverage/index.htmlにあります。ブラウザでこのファイルを開くと、以下のような情報が確認できます:
- 総カバレッジ率(%)
- ファイルごとのカバレッジ率
- カバレッジされていないコードの行番号
参考