発刊: 2023-03-24
どんな本?
JavaScriptのテストフレームワークであるJestを題材に、自動テストを使ったアプリケーション開発の流れについて解説してある本です。
ただし、取り扱う範囲はアプリケーション開発の本筋のみに留まりません。自動テストの必要性やプロジェクトへの導入、CI(継続的インテグレーション)と、多くの範囲がカバーされています。
フロントエンドのエコシステムを学べる
本書はJest, ひいては自動テスト全般の入門書という位置付けですが、私にとってはフロントエンドエコシステムの入門書としても役立ちました。TypeScriptやESLint, Prettierを使うようにプロジェクトをセットアップするところや、Storybook, Playwrightの使い方などをまとめて学べるのは嬉しいポイントです。
また、本の後半でRectを使ってアプリケーションを開発する際に、ライブラリがいくつか紹介されていて参考になりました。
自動テストを使った開発を追体験できる
前述の通り、後半ではアプリケーション開発を行うのですが、よくあるハンズオン形式よりもさらにリアリティがある構成になっています。というのも、この章を担当されている執筆者が実際に開発する過程をトレースする内容になっているからです。
初めに最小構成で作りきってしまうところからスタートしたり、不安なところをテストして進めること、実装後にどのテストを残すのかなど、実装時の指針になる所作が盛り沢山でした。
所々に執筆者の考え(プライベート関数のテスト、モックについてなど)が記述されているのも、とても参考になりました。こういった意見はいろいろなケースを考えて無難になりがちなので、特定のコンテキストがあると良いですね。
さいごに
本書はここまでに紹介した内容以外にも、なぜ自動テストを書くのかやJestの細かい使い方、自動テストを開発フローに組み込む流れについて多くのページが割かれており、「テスト入門」のタイトルに偽りのない良書です。
本文に書いてある通り、JavaScriptを通して自動テストに入門したい方や、実際のプロジェクトへ自動テストを導入したい方にオススメできる本です。