フロントエンド・PHPカンファレンス北海道2026
トーク(15分)
PHP

TestContainersを利用したLaravelのAPIテストの書き方

jsoizo せきね じゅん jsoizo

Laravelで開発しているWeb APIのテストでデータベースやRedisを使いたいとき、どうしていますか?
SQLiteで代用する、Docker Composeで事前に立ち上げておくなどのアプローチがありますが、どれも一長一短があります。
Testcontainersは、テストコードから直接コンテナを起動・破棄できるライブラリです。
MySQL/PostgreSQLでテストでき、テストごとにクリーンな環境が手に入り、CI設定もシンプルになります。

本セッションでは、LaravelプロジェクトにTestcontainersを導入し、APIテストを書く方法を紹介します。

話すこと:

  • APIテストにおける課題
  • Testcontainersの仕組みと利用するメリット
  • LaravelのHTTP TestsやDBのマイグレーションと組み合わせた利用例
  • GitHub ActionsなどCIでの動かし方
  • テスト速度とのトレードオフ