2010年6月23日水曜日

Fixtureのフォーマットって何がええのん

YAMLでもarrayでもない何か... CSV?

職場で、テスト用データを準備してちゃんと情報の漏洩とかしないかテストしないといけないとなって、まずはコードレベルで保障すべくユニットテストをするとなったわけだけど、CakePHPのFixtureのコードを見せて、これ書きたいですか?って聞いたら、「んー」という返答。やっぱりね!という感じです。確かに、EclipseやTextMateとかじゃ補完しにくい部分。テンプレートやスニペットを用意すればいいんだけど、コードが縦に長くなる。それで結局CSVでいくことになるわけだけど、CSVは横に長くなる。でも文字コードの問題を無視すればExcelとかでGUI的な編集もできる。でもでもでもでも、結局何がいいんだろ?

とりあえずDB設計上の問題から実行する順番をファイル名でルール付けして、CSVからINSERTしまくるようにはした。これでユニットテストとか、実際で操作してテストするためのテストデータの流し込みはできるようになった。Railsとかのmigrateじゃないけど、DBスキーマも一発で最新版に同期できるようにしてるので、これでしばらくは持ちこたえられそう。時間があったらYzwのサブパッケージ?に入れようと思います。

0 件のコメント: