質問: FuelPHPで、DBのテストデータを扱いたいです。 プロジェクトメンバーで、共通のテストデータを扱いたいです。 マイグレーションのような感覚で、テストデータをコマンドラインから実行することは可能でしょうか。 テストデータとして扱いたいデータは、以下のようなケースです。 例) usersテーブルへのテストデータを生成 ORMでのデータ取得を行うようなプログラムを構築している。 データベースへ接続し、データの取得を行い表示の検証を行う場合、ローカルで開発している場合にはプロジェクトメンバー各々で、各テーブルのテストデータを持っているということになる。 (色々工夫すれば共通のデータを持つことも可能だが考慮しない。) このようなケースで、マイグレーションのようにコマンドラインから指定のテーブルへデータをINSERTするようなファイルを作成し、実行したいです。
回答: FuelPHPやPHPの次元とは全く別なところから回答を寄せたいと思います。 1)プロジェクトメンバーが同じLANセグメント上にいてIPリーチャブルな場合 テストサーバー上にデータベースを構築して、メンバーが全員そのデータベースを利用する。 2)プロジェクトメンバーの一部がIPリーチャブルじゃないところにいる場合 必要に応じてデータベースを個別に構築する。 もしもMySQLであればmysqldumpコマンドでバックアップを取ることが出来ますし、 PostgreSQLでもpg_dump/pg_dumpallでバックアップを取れます。 ある箇所で構築し終わったデータベースを、別の箇所でダンプファイルから復元をかければ同じデータベースが出来上がります。 もしくは、VPNを使って接続してもいいですね。 SoftEther VPNシリーズは優秀です。 -- コマンドラインからのテスト、という意味なら、oilコマンドがありますが、 テストデータが何か次第では使えるかもしれません。 参考:コンソール - Oil パッケージ - FuelPHP ドキュメント