これは CakePHP Advent Calendar 2017 の 22 日目の記事です。

プラグインのテスト

今回は CakePHP 2 のプラグインを開発する際に便利な、Travis CI 上でテストを実行するためのスクリプト「FriendsOfCake/travis」を紹介します。

CakePHP にはプラグインの機構が搭載されていますが、公式の Cookbook にも基本的な機能の説明がなされているのみで特にテストの手法については具体的な記述がありません。基本的には標準的なアプリケーションと同じようにしてテストを作成することが可能ですが、プラグインのリポジトリー単独でテストを実行することができるように設計されていないためテストの呼び出しにやや難があります。拙作の CakePHP 2 向けプラグイン「lampager-cakephp2」では当初、テストにのみ用いられるコードをプラグイン本体にも含めていましたが、読み込むアプリケーションとの競合や、プラグイン自体のメンテナビリティーの問題があったため別の手法を取ることにしました。

プラグインの作成 – 2.x(CakePHP 2.x Cookbook)