【Rails】RSpecのdescribe, context, it, exampleの役割

1 min 224 views
muraoka

muraoka

pixiv、nanaでプロダクトマネージャーを経験。
現在はマーケティングやwebサービス開発のコンサルティングを行っています。

FOLLOW

Rspecでテストを書いていてdescribe, context, it, exampleで迷ったのでメモ。ここをちゃんと役割分担してかくと非常に読みやすくなります。

各役割

  • describe→どこをテストするのかを書く(テスト対象のメソッド名を指定することが多いです)
    • User#login
    • Order#cancel
  • context: どういう条件でテストするの書く
    • ユーザーがログインしている場合
    • ユーザーがログインしていない場合
    • 仮登録の場合
  • it: どういう結果を期待しているのかを書く
    • true が返ること
    • user の updated_at が現在時刻に更新されていること

itとexampleの使い分け

英語だとit、日本語だとexapmleを使うことが多いです。

関連記事