はじめに
BASE株式会社でシニアエンジニアを務めているプログラミングをするパンダ(@Panda_Program)と申します。本連載はPHPカンファレンス2022での発表「実践!ユニットテスト入門」を再構成して記事としたものです。
対象読者
本連載の対象読者は、自動テストの必要性をわかっているもののまだテストコードを書いたことがない開発者の方です。さらに本記事では、テストコードを書く習慣が身についている中級者の方にとっても自動テストに対する理解を深める助けになるでしょう。
テストを上手に活用してソフトウェア開発を加速させる
前回は、Dev(開発)のみならずOps(運用)にまで視点を広げることにより、ソフトウェア開発の全体像におけるテストの位置付けを説明しました。ここからは視点をDev(開発)の自動テストに戻しましょう。
本連載を通して、自動テストの意義は開発者がリリース前にバグを見つけることだと強調してきました。このように第一義的に自動テストは自分の書いたコードのバグを検知するために使うものとされています。
しかし、自動テストの活用方法はそれだけではありません。さらに、自動テストを使ってソフトウェア開発の技法を洗練することができます。連載の第3回となる本記事では、自動テストの応用的な使い方であるリファクタリングとTDD(テスト駆動開発)を紹介します。