はじめに
フロントエンド開発のためのテスト入門を読了したので感想と個人的な所感を記載します。
結論から述べると私はこの本を読んで非常に満足しております!!本記事を読んで少しでも多くの方にこの本を手に取ってもらえたらと思います。本書は、「テストってなぜ書くのだろうか?」「単体/結合/E2Eテスト等、各レベルのテストをどのように構成するべきか?」といったような示唆に富んだ内容になっているかと思います。
なぜこの書籍を読んだのか
Javascript/TypeScriptのテスティングフレームワークの一つであるJestの学習をしたく2023/5現時点で新しい書籍であることと、他にあまりJestの学習ができそうな書籍があまりなく、半分好奇心で読んでみた。
目的に対する満足度
60%
理由
本書はJestのみの書籍では当然なく、確かにJestの大枠はつかめたが、1つ1つの書き方や、APIが細かく説明されているといった類の書籍でもなく、今後実装時にリファレンスレベルでおいておけるレベルの書籍ではなかったため。60%としている。
総合満足度
80%
理由
一通り書籍を読んだが、本書のピークは1-2章だと思いました。
1章:「テストの目的と障壁」、2章:「テスト手法と戦略」となっており、3章からは各単体レベル/結合レベルなどのテストの実装方法について記載されています。3章からは前述の通り、個人的に求めるレベル(リファレンスレベルなのでかなり細かいレベルですが・・・)に達していなかったのですが、そこそこの満足度でした。
実は私が所属しているプロジェクトは2章にあるようなE2Eテストがかなり重い「アイスクリームコーン型テスト」になっており
毎日のテストに相当数のコストがかかってしまっているのが現状です。
そういった現状をある意味この書籍でズバッと指摘された気がしており、かなり心に響きました。
感想
Seleniumなどを使ったE2Eテストは確かに動く画面で動かすためとっつきやすく、考えやすいのかなと思います。実際私のプロジェクトもそうなっています。最近はE2Eテストは開発者がブラウザを操作したものがそのまま記憶されて~といった形で簡単テスト作成できるものもありますが、だからと言って安易にE2Eテストを増やして良いといったものではないのだと思いました。
ここで一度立ち止まってプロジェクトの他チームメンバーへの説明や関係者への説明を今すぐにでもしてテスト戦略練りたくなりました。