1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

RSpec入門 2.RSpecのセットアップ

Last updated at Posted at 2020-12-13

前回の続き。

#RSpecのインストール、設定
まずはRSpecを使う準備をしていきましょう。

##Gemインストール
rspec-railsをGemfileに追加、インストール。

Gemfile
group :development, :test do
  gem 'rspec-rails'
end
$ bundle install

##テストDB作成
テストDBの確認。下記の設定してなければ追記する。

config/database.yml
test:
  <<: *default
  database: projects_test  #MySQLやPostgreSQLを使っている場合
  database: db/test.sqlite3  #SQLiteを使っている場合

DBの作成。

$ rails db:create:all

##RSpecインストール

$ rails generate rspec:install

ひとまず、これでRSpecのセットアップが完了しました。お疲れ様です!
このコマンドで、以下のファイルディレクトリが生成されます。

ファイル 機能
.rspec 設定ファイル
spec スペックファイル入れるディレクトリ
spec/spec_helper.rb テストで使うヘルパーファイル
spec/rails_helper.rb テストで使うヘルパーファイル

##.rspecでの設定
続いて、RSpecの設定をしていきましょう。

.rspec
--require spec_helper  #spec_helperの参照
--format documentation  #テスト結果を見やすいドキュメントにする
--warnings  #警告全表示(エラーではないが非推奨になった処理等教えてくれる)

--warningsはテスト実行時に情報のノイズを消すため、今回は無しにしています。

##その他の設定
まずはbinstubをインストールしてテストの起動時間を速くします。

Gemfile
group :development do
  gem 'spring-commands-rspec'
end
$ bundle install

続いて、rails generateコマンド実行時にどのスペックファイルを自動生成するか設定していきます。

config/application.rb
config.generators do |g|
  g.test_framework :rspec,
  fixtures: false,
  view_specs: false,
  helper_specs: false,
  routing_specs: false
end

falseに設定したスペックファイルは自動生成されず、モデルとコントローラのスペックファイルのみ自動生成されるようになります。
なお、自動生成を外したスペックファイルも後から手動で生成することもできます。

#テストの実行
RSpecが正しくインストールできていれば、下記のコマンドでテストが実行できます。

$ bin/rspec

続き

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?