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

プラグインのテスト

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

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

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

今話題の PHP 7、非推奨要素などがまるっと削除されてすっきり速くなったそうなので試してみました。
実際に現在ご覧のページも執筆時点最新の PHP 7.0.0RC1 で表示されています。そんな時代もありました。

環境

phpenv でバージョン切り替えが可能な環境で実験してみます。

項目名称
OSArch Linux(Linux 4.1.6)
Apache2.4.16
phpenvrbenv 0.4.0-153-g3b6faa8
php-buildv0.11.0dev