【レビュー】Everyday Rails – RSpecによるRailsテスト入門がめちゃめちゃ良かった話


 

こんにちは。Tomoyuki(@tomoyuki65)です。

最近、再びWeb開発の学習を進めていますが、その中で『Everyday Rails – RSpecによるRailsテスト入門』という書籍を利用してRSpecの学習を行いました。

私がこの書籍を購入したのは数年前になり、それ以降本格的に学習する機会はなかったものの、今回ついにそのタイミングがやってきました。

ということで、この記事では『Everyday Rails – RSpecによるRailsテスト入門』について軽くレビューしておきます。

 



【レビュー】Everyday Rails – RSpecによるRailsテスト入門がめちゃめちゃ良かった話

購入・学習前の注意点

まず、『Everyday Rails – RSpecによるRailsテスト入門』を購入したり、学習を始める前の注意点としては、この書籍はRubyやRuby on Railsなどの知識が乏しいような初心者向けの内容ではないため、事前にある程度のWeb開発知識が必要です。

私の場合は前職でIT業界にいたのである程度の適性(プログラミングなどに慣れがある)があったり、Progateというプログラミング学習サービスで一通り基本的なWeb開発の学習を済ませていたり、Railsで簡単なWebアプリケーションを作ってHeroku(PaaS)にデプロイした経験があるため、この書籍を読んでもすんなり学習を進めることができました。

そのため、まだWeb開発の知識が乏しい人がこの書籍に興味を持ったなら、まずは事前にProgateやRailsチュートリアルなどで一通りWeb開発の知識を身に付けることをおすすめします。

※私がこの書籍を学習するタイミングではRailsチュートリアルをやりこんではいませんが、特に問題なく学習を進められました。そのためRailsチュートリアルの学習が必須というわけではありません。

 

関連記事👇

Progate(プロゲート)でRubyプログラミングやってみた!

2018年12月3日

 

良かった点

この書籍の良かった点としては、まず適宜バージョンアップしてくれていること(例えばRailsのバージョンが変わったら、それに合わせて適宜書籍の内容も更新してくれている)で、更新されるとメールで連絡が来て、そこから最新版の書籍をダウンロードできます。

私がこの書籍を購入したのは数年前ですが、その後何度かバージョンアップされており、私が学習するタイミングでも最新版の内容で学習を進められたので、その点は非常にありがたかったです。

また、この書籍での学習を通じて、”Web開発におけるテストとは具体的にどういうものなのか”だったり、”RailsにRSpecのテストを導入するにはどうすればいいのか”という点について、基本的なところをしっかり学ぶことができたのはとても良かったです。

特にシステムスペックではCapybaraというgemを利用した、画面に対するシミュレーションテスト(UIテスト)も体験でき、モダンな感じが非常に感動しました。

※私は前職でIT業界にいましたが、そこはレガシーな環境であり、画面のテストというと実際に画面を操作して画面のスクリーンショットを取るようなテスト方法が基本なので、それと比べるとWeb開発におけるモダンなUIテストは非常に革新的でした。

 

悪かった点

逆に悪かった点については、まずこの書籍を購入するのが少しだけ難易度が高いことですが、それに関しては以下の関連記事に購入方法をまとめているので、そちらを参考にしていただければ購入できると思います。

 

関連記事👇

Leanpubで「Everyday Rails – RSpecによるRailsテスト入門」の買い方・購入方法

2019年4月25日

 

学習後の感想

この書籍で学習した後に感じたこととしては、RSpecの基礎は学べましたが、実際に業務で使うことを想像するともっともっと慣れが必要だなと思うので、今後はRSpecを利用したWeb開発の経験をもっともっと積んでいく必要がありそうです。

また、テスト駆動開発(TDD)ではシステムスペックを書いてから、アプリケーションの機能を追加して行くことになりますが、そのためには例えばアプリケーションの画面イメージなどが事前にわかっている必要がある(このボタンを押したら、こういう処理がされ、こういう画面表示になるというようなものがある程度定まっている必要がある)ため、それが無いような状態で開発を進めるのはちょっと難しいなと思いました。

そのため、もしオリジナルのアプリケーションを開発する際には、事前にある程度画面イメージなどの設計をしておく必要がありそうです。

 

余談

Web開発の学習を進めている方の中で、これから未経験でモダンなWeb開発をしている企業に就職することを目指している方もいるのではと思いますが、その場合は基本的にベンチャー企業に就職することになると思います。

ただベンチャー企業の場合は、ちゃんとテストを書きながらしっかり機能開発をしていくというよりも、ゴリゴリ新規機能を開発することができる人材が求められる傾向にあるため、そう考えるとRSpecのようなテストに関する技術はそれほど求められていないようです。

そのため、もしベンチャー企業に就職することを検討している方については、RSpecの学習はほどほどにしつつ、Railsチュートリアルのようなアプリケーションを開発するための知識や技術、CI/CDパイプラインでテストを自動化する方法、そしてAWSやGCPなどのクラウドに関する知識や技術を得るのに力を入れた方がよさそうです。

ということで、私もまだRailsチュートリアルはやり込んでいないため、この後はまずRailsチュートリアルの学習を進めてみる予定です。

 



最後に

今回は『Everyday Rails – RSpecによるRailsテスト入門』について軽くレビューしました。

この書籍はRSpecの基礎を学びたい方や、Web開発におけるテストの方法を学んでみたい人にとっては、非常に良い教材だと思うので、興味がある方はぜひ購入して学習してみて下さい。

 

関連記事👇

コントローラスペックをリクエストスペックで置き換える際の注意点【Everyday Rails – RSpecによるRailsテスト入門の参考資料】

2022年6月26日

 

各種SNSなど

各種SNSなど、チャンネル登録やフォローをしていただけると励みになるので、よければぜひお願いします!

 

The following two tabs change content below.

Tomoyuki

SEを5年経験後、全くの未経験ながら思い切ってブロガーに転身し、月間13万PVを達成。その後コロナの影響も受け、以前から興味があったWeb系エンジニアへのキャリアチェンジを決意。現在はWeb系エンジニアとして働きながら、プロゲーマーとしても活躍できるように活動中。








シェアはこちらから


おすすめのゲーミングPCまとめ

近年、eスポーツという言葉が浸透し、ゲーミングPCの需要も増えましたが、「ゲーミングPCはどう選べばいいの?」という人も多いのではないでしょうか。そんなPC初心者でも迷わず選べるよう、おすすめのゲーミングPCをご紹介します!


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です