8tako8tako8’s blog

ソフトウェアエンジニア

【感想】「Everyday Rails - RSpecによるRailsテスト入門」を読んで

はじめに

「Everyday Rails - RSpecによるRailsテスト入門」はRSpecでの基本的なテストから実践的なテストまでのテストの書き方を学ぶのに最適な本です。有料のコンテンツ(数千円)ですが、値段以上に質と量が良いものとなっています。今回の記事は、RSpecを習得するため、本を読んだ感想です。

良かったところ・学んだこと

RSpecを体系的に学べる

RSpecのセットアップから始まり、モデルスペックやリクエストスペック、さらには速いテストの書き方も学ぶことができるので、RSpecを網羅的に知りたい人にとっては最適な本でした。

手元でサンプルコードを使用してテストコードを実装できる

手元でテストコードを実装できるようにソースコードが提供いたり、章ごとにブランチが分けられているので、アウトプットがしやすかったです。

著者の経験に基づいてテストの書き方を学べる

Railsエンジニアとして経験豊富な著者が普段意識してどのようにしてテストを書いているか学ぶことができました。 重要なポイントが随所で解説されるので、覚えておきたい情報の取捨選択がしやすかったです。

最新のRailsに対応している

Rails7や最新のgemの仕様に合わせたサンプルコードで記述されています! 古い書籍だとRailsのバージョンが低いことがよくあるので、最新のRailsで学べる数少ない教材だと思います!

難しかったこと

スタブやモックの実装方法は少し難しく感じた

スタブやモックを用いたテストの例が紹介されていましたが、普段扱うことのない高度なテストをやっているように見えました。 解説がしっかりしているので理解できたはずです。

初耳のgemがあった

launchy, shoulda-matchersなど触れたことのないgemがいくつかあり、とっつきにくく感じた。

あわせて読むと良いもの

この本を翻訳した伊藤淳一さんが書かれた記事です。要点がまとまってるので先に読むといいかも。

まとめ

RSpecの体系的に学ぶことを目的として読みましたが、著者の経験などからそれ以上のことが学べたり、TDDで開発しよう!という気にさせられたので、得たものは大きかったです。モデルスペックやリクエストスペックについてはもう一度読み直そうと思います。