社内最長老のシステムにPHPUnitで立ち向かう方法 by やなせ たかし

PHPerKaigi 2020
LT

社内最長老のシステムにPHPUnitで立ち向かう方法

penguin_no_045 やなせ たかし penguin_no_045
1

レガシーシステムの開発中に訪れるPHPのEOL。バージョンアップ後は全機能テストが待っています。
既存のテスト仕様書では重要機能を網羅していない、書かれている単体テストは重要機能をテストしていない・・・
このような状況でユニットテストを書くためには、問題の分割と、テストで担保したいこと(目的)の設定が重要です。
18年にわたって運用されているシステムに対して、PHPUnitと、PHPの挙動を操作するuopzという拡張を利用してテストをどのように行ったのかをご紹介します。