Murayama blog.

プログラミングと、その次の話

RSpecの学び方 - これからがんばる人向け -

目的

最近、仕事でRubyを使うことが増えてきました。
RubyRailsと勉強すると次に考えるのは、
「テストどうやって書くよ」ということですよね。
#きっとそう。

そんなわけでRSpecの学び方をまとめます。


対象者

そろそろRSpecでテストを書きたい!人向け。


学び方

step1 - 「RSpec の入門とその一歩先」へを体験する

まず勉強になるのがこちら。
RSpec の入門とその一歩先へ - t-wadaの日記

「東京 Ruby 会議 03 の RSpec ワークショップの資料です。このワークショップでは参加者の方に「写経」(コードを書き写すこと)をして貰い、TDD/BDD と RSpec を同時に学べるように都度説明を入れるかたちで行いました。」

http://d.hatena.ne.jp/t-wada/20100228/p1


RSpecワークショップ資料を公開してくださっています。全3部作で、インクリメンタルなRSpecテストプロセスを学ぶことができます。
エディタを立ち上げてざっと体験してみるのがオススメです。


step2 - RSpecを学ぶつもりがBDDを学ぶ

ワークショップで、RSpecを体験したら、次は書籍を読んで理解を深めます。
RSpecの本と言えばこれ。

The RSpec Book (Professional Ruby Series)

The RSpec Book (Professional Ruby Series)

ここで注意。
RSpecの本!と思って購入すると前書きでキャンと言わされます。良い意味で。

本書は、RSpecだけに留まらずBDDの概念を網羅的に解説しています。もちろん、RSpecの解説も充実していて、テストダブルの書き方など勉強になります。RSpec以外にもCucumberやWebratなどが取り上げられています。ただし、私の場合、Webratを使おうとしていろいろはまりました。なんでWebratではなくCapybaraに置き換えて勉強しました。


step3 - RailsテストでRSpecを学ぶ

WEB+DB PRESS Vol.61

WEB+DB PRESS Vol.61

WEB+DB pressの記事としてRails3テストが載っています。この記事の中でもRSpecが重点的に取り上げられています。業務では、Ruby=Railsなことが多いので概要を学ぶには最適です。
step2で知識を蓄えておけばスラスラと読めると思います。
#逆に忙しい人は、step2とばしてこっちだけでもいいかな。


まとめ

あまり参考になるかわかりませんが、私の場合、こんなかんじでRSpecの理解を深めました。実際に勉強したのは2012年の春頃だったかな。

テストを書ける、ってのと、実際に書くってのは別の話で、実際に書いていくのが大変なんですよね。
くじけず、あとは実践あるのみ。