Rails モデルとコントローラーの単体テストコードの違い
テストコードを書く方針の違い
モデル
インスタンスを生成し、それがモデルに規定したどおりの挙動になるか(たとえば、バリデーションが正しく働くか)を確かめる
コントローラー
あるアクションにリクエストを送ったとき、想定通りのレスポンスが生成されるかどうかを確かめる
ファイル生成のコマンドの違い
モデル
% rails g rspec:model user
コントローラー
% rails g rspec:request tweets
Request Spec
RSpecが提供している、コントローラーのテストコードを書くために特化した手法。RSpecの導入が完了していれば使用できる。