MPA上のJavaScriptの処理を楽にテストする 〜LaravelとSymfonyを例に〜 by たつきち

PHPカンファレンス福岡2023
レギュラートーク(30分)

MPA上のJavaScriptの処理を楽にテストする 〜LaravelとSymfonyを例に〜

ttskch たつきち ttskch
3

SPA全盛の時代ですが、まだまだ古き良きMPA(Multi Page Application)のシステムを触る機会は多いですし、
凝ったUIを必要としない社内システムなどでは、新規開発でもMPA構成を採用することは普通にあります。

MPAだとビューのテストは基本的にPHPフレームワークが提供してくれる結合テスト基盤を使って行うことになると思いますが、
結合テストで検証できるのはあくまでHTTPレスポンスの内容までで、その後ブラウザ上でJavaScriptを使ってある程度複雑な処理が行われる場合に、その部分をテストすることができません。

MPAであっても、一部の画面にだけちょっとしたDOM操作や非同期処理が必要になるケースは多く(例えばいいねボタンとか)、
このようなJSの処理は上記の理由から自動テストがサボられがちです。

このトークでは、こういったMPA上のJavaScriptの処理を楽にテストする方法を、LaravelおよびSymfonyにおける実装例をもとに解説します。
(例としてLaravelとSymfonyを取り上げますが、他のフレームワークにも容易に応用可能な内容です)
既存のMPAに後付けで簡単に導入することが可能なので、すぐにでも実務に活かせる内容になると思います。乞うご期待。