久しぶりにrubyのテスト環境(rspec)を利用しようとして、嵌ったのでメモ。
前に使っていたのが、rspecのヴァージョン2だったが、今回はヴァージョン3を使った。そのため、幾つかのルールや手順が変わったようだ。
目次
1.gem install だけでは、rspecは使えない。
前回のruby環境の設定の記事(「macでruby」)の最後で、ちょこっとrspecのインストールを行って終わった気になっていました。で、適当なspecファイルを作って実行したところ、以下のようなエラーが。
/Users/kseikaku/.rbenv/versions/2.2.4/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- spec_helper (LoadError)
後略
うーん。素直に読めば、spec_helperなるファイルが読めないとのこと。なんだ?これ。
2.Rspecを使うための初期処理(rspec –init)が必要。
色々ネットを検索しまくってみて、どうやら2→3のメジャーバージョンアップに際して、rspecを使う前に、rspec –initなる処理を行い、spec_helper.rbというファイルを生成する必要がある模様。
以下、「RailsじゃないRspec3環境を構築する方法」を参考に環境を構築して見た。(この記事自体1年以上前の記事。時代遅れな俺orz)
2.1 まずは、Rspecを利用するフォルダを作成
とりあえず書類(Documents)フォルダに、dev>ruby>sandbox>helloフォルダを作成
2.2 そのフォルダで、bundlerを初期化して、rspecをインストール。
% bundle init
Gemファイルが生成されるので、その内容から以下の1行を削除
#gem "rails"
その上で、以下のの1行を追加。
#gem "rspec",">=3.4.0"
(参考にしたHPでは、3.0.0でしたが、最新をいれたいので、3.4にしました)
ここで、bundleを使ってインストール
% bundle install
2.3 rspecの初期化
以下のコマンドでrspecの初期化を実行。
bundle exec rspec --init
これで、rspecの実行ができるようになりました。