CakePHP2のFixtureを簡単に書く

CakePHPのUnitTestは便利なツールではありますが、いろいろ書かなくてはいけないのでかなり面倒。
ということで、テスト用に使っているデータベースを読みこむようにすればいいですが、条件を変えようとするとちょっと面倒です。
ということでFixtureを使いたいのですが、大量にデータがあるとちょっと大変です。
ですが、既存のデータベースから比較的簡単にインポートすることができます。

phpMyAdminを使う

実はphpMyAdminにはPHPでテーブルをエクスポートする機能があります。
これは、Fixtureと書式がほぼ一緒なのでそのままコピペすれば使えます。(Fixtureは一番外側の配列が2重になっているのでそこだけ変えればOKです。

ちなみに、動的にデータベースの内容を変えてテストしたい場合には、別途メソッドを作って同じように$recordsにデータを入れてあげて、テスト前にそのメソッドを呼べばOK。


スポンサーリンク

タイトルとURLをコピーしました