Rails Tutorialをminitestでやってみた

はじめに

Rails4が出たことだし、Rails Tutorialでもひと通りやってみようとチャレンジ。

ただ、Rails3のときにひと通りやったこともあり、普通にやったらあまり面白みもないので、RSpecで書かれているテストをminitestのspec形式で書いてみることにしました。

minitest

そもそものきっかけは、RubyHirobaでのwillnetさんによるLT。ちょうどRSpecの書き方が色々と変わったことで嫌気が差した頃だったので、「ちょっとやってみるか」という軽い気持ちでやってみました。

題材

さて、minitestでテストを書くと言っても素で書くのはちょっとつらい。題材として、

  • 何か動くものができること
  • RSpecでテストが書かれていること

を探していると、ちょうどいいものが。それがRails Tutorialで、Rails4の勉強がてらやってみることにしました。

やった成果

GitHubで公開しています。

ただ、一部のテストはちょっと書けないままでいます。

所感

思ったことをつらつらと

  • MinitestでSpec形式のテストもかけるので、RSpec書いていた人はさくっと書けるのではないかと思います。
  • matcherがまだ不足気味かなと思います。自分で書けよって言われそうですが。
  • ただ、環境はどんどん整ってきているような気もします。GitHubに上がっているソースを見ると、最新のものにはmatcherが幾つか追加されているので、より書きやすくなることは確実かと。
  • minitest-rails-capybara gemとcapybara_minitest_spec gemがあって、それぞれcapybaraに関するgemですが、matcherの有無だけです。こういうところがまだ発展途上ってな感じ。
  • 時間があったらGuardfileも修正しておこうかなと思います。controllerを直して、integrationのテストを実行するようにしたいなと。