[Windows][Jenkins][Ruby][備忘録]simplecovとsimplecov-rcovを使ってJenkinsでカバレッジを確認
あらすじ
rcovインストールに思いの他てこずったので他のツールを検討してみる。
調べるとsimplecov,simplecov-rcovというツールでもいける様子。Ruby1.9系のカバレッジツールらしいが1.8でも使えるだろうか。あとRailsじゃなくても使えるのかな。
参考サイト
手順(Getting Startedをかなりはしょりながら)
Simplecov
Gemfileに以下を追加。
gem 'simplecov'
次にspecファイルに以下のrequireを追加。
require 'simplecov'
SimpleCov.start
そしてrspecを実行。
$ bundle exec rspec -fs spec\convert_spec.rb
WARNING: SimpleCov is activated, but you're not running Ruby 1.9+ - no coverage analysis will happen
WARNING: SimpleCov is activated, but you're not running Ruby 1.9+ - no coverage analysis will happen
やっぱ1.8じゃだめかー。ちょっとRuby1.9系で試してみる。
$ bundle exec rspec -fs spec\convert_spec.rb
(略)
Coverage report generated for RSpec to C:/project/excel_for_ruby/coverage. 87
/ 93 LOC (93.55%) covered.
テストは失敗したけど、coverageディレクトリが作成された! 中のindex.htmlを開くと……。
おおー!
Simplecov-rcov
JenkinsのRuby metrics plugin用にSimpleCovで出力したカバレッジをrcovフォーマットになおしてくれる?
Gemfileに以下を追加。
gem 'simplecov-rcov'
次にspecファイルに以下のrequireを追加。
require 'simplecov-rcov'
SimpleCov.formatter = SimpleCov::Formatter::RcovFormatter
そしてrspecを実行。
$ bundle exec rspec -fs spec\convert_spec.rb
(略)
Coverage report Rcov style generated for RSpec to C:/project/excel_for_ruby/coverage/rcov
ちょっと表記が変わった。coverageの下にrcovという新しいディレクトリが出来ている。その下にindex.html。
Jenkins
- Jenkinsの管理 -> プラグインの管理からRuby metrics pluginをインストール
- プロジェクトの設定 -> ビルド後の処理 -> Publish Rcov reportにチェック