採択 2019/12/01 17:25〜 Track 1 (1F 大展示ホール) Lightning Talks

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

penguin_no_045 やなせ たかし penguin_no_045

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