Upload
akai
View
314
Download
1
Embed Size (px)
Citation preview
EveryDayRailsRSpecリューノス読書会
2015-10-15
第五章
コントローラスペックの基礎
コントローラは不憫です
開発者は皆、うすいコントローラを書きたがる
0.02mm?
薄いほうがええやろ?w
うすいだけじゃきもちよくなれない
第五章 概要● なぜコントローラをテストするのか● コントローラのテストの基礎● コントローラスペックの整理● スペック用のデータ準備● コントローラ7つのCRUDとテスト● 入れ子なルーティングについて● CSVやJSONなど、非HTMLなコンテンツのテスト
● なぜコントローラをテストするのか● コントローラテストの基礎● コントローラスペックの整理● スペック用のデータ準備● コントローラ7つのCRUDとテスト● 入れ子なルーティングについて● CSVやJSONなど、非HTMLなコンテンツのテスト
いつかちゃんと全部まとめたいネ……。
なぜコントローラをテストするのか?
何故?
どうしよっかなぁ
● テストしたほうがいいね!– コントローラはクラスを
持ったメソッドだからテストすべきだ
– 統合テストと比べてすぐ書けるよね
– 統合テストより早く動くしね
● テストしなくてもよくね?– コントローラは0.02mmみた
いなモンだしいらなくね?– コントローラスペック確かに
速いけどモデルとかオブジェクト単体のテストよりは遅いじゃん
– フィーチャースペック一つで複数のコントローラテストしてるようなもんだしなァ
しないより
したほうが
いいに
きまってるからだろうが
ゴムはつけましょう
コントローラテストの基礎
コントローラスペックの基本構文
# 保存が完了したらホームページにリダイレクトすること
it "redirects to the home page upon save" do
post :create, contact: FactoryGirl.attributes_for(:contact)
expect(response).to redirect_to root_url
end
コントローラスペックの基本構文 # 保存が完了したらホームページにリダイレクトすること
it "redirects to the home page upon save" do
post :create, contact: FactoryGirl.attributes_for(:contact)
expect(response).to redirect_to root_url
end
● httpメソッドとコントローラメソッドと任意のパラメータ– postと:create、そして後ろに続くFactoryGirl.atrr~
● FactoryGirl.attrbutes_for– テストデータがハッシュで作られるらしい
やあ (´・ω・`)ようこそ、バーボンハウスへ。このテキーラはサービスだから、まず飲んで落ち着いて欲しい。
うん、「まだ」なんだ。済まない。仏の顔もって言うしね、謝って許してもらおうとも思っていない。
でも、このプレゼンを聞いたとき、君は、きっと言葉では言い表せない「ときめき」みたいなものを感じてくれたと思う。殺伐とした世の中で、そういう気持ちを忘れないで欲しいそう思って、このプレゼンを作ったんだ。
じゃあ、注文を聞こうか。
● Laughing at Dean | Flickr - Photo Sharing! https://www.flickr.com/photos/wickenden/3644297054/
● 258/365: Under my skin | Flickr - Photo Sharing! https://www.flickr.com/photos/pinkcotton/3924251445/
● I'm Sorry | Flickr - Photo Sharing! https://www.flickr.com/photos/maroonsurreal/6288367519/