Rectorで実現する、なるべく手を動かさない PHPUnit 9→11 バージョンアップ by 荒巻拓哉

PHPerKaigi 2026
LT(5分)

Rectorで実現する、なるべく手を動かさない PHPUnit 9→11 バージョンアップ

takaram71 荒巻拓哉 takaram71
8

PHPUnitは毎年新しいメジャーバージョンがリリースされ、どんどんと変化を遂げています。
新機能や改善が取り入れられるスピードが速い一方、古いメソッドや機能の非推奨化・削除もどんどん行われます。
実際にPHPUnit 11のChangeLogを見てみると、Deprecatedが19件、Removedが25件もあります。

私たちのチームではPHPUnit 9を使っていたのですが、9から11へのバージョンアップには広範囲の修正が必要になる変更もあり、なかなか実行に踏み切れませんでした。
そこで、コードの変更を自動で行ってくれるツール "Rector" を採用し、手動での変更を極力減らしてPHPUnitのバージョンアップを行いました。

このトークでは、Rectorを用いたPHPUnitバージョンアップの実体験に基づき、以下のことをお話しします。

  • Rectorを使ったPHPUnit9→11へのバージョンアップ手順
  • 自動では対応しきれず、手動対応が必要だった事例