新しいプロジェクトでテストをきちんと書くのに、
どうもリレーションが多いモデルなので、
まじめにFixtureを書こうとすると気が狂いそうになる。
特に、Railsのバージョンを2.3.5に変えたので、
IDが自動的に生成されちゃうので、なおのこと関連どうかけってよ・・・orz
なことに。
とりあえずFixtureのヘルプをみるも、omapを使え、とか書いてあるし。
調べてみるとかなりめんどくさそう。
ということで見つけたのが
ここ
なるほどねえ・・・
ということで導入決定。
親切に書いてあるけど、一応
本家を参照しつつやってみる。
しかしまあ、どこも今はRSpecが標準らしく、
使い方はどこもRSpec向けの設定ばかり。
その上なんかテストの形式も変わってるし・・・
test "hoge" do て何?
という感じですっかり時代に取り残された気分。
まあ、とにかくfactoriesディレクトリを作成して*.rbファイルを作り、
中にFactory.defuineなものを書いて設定するとよし。
ただ、Fixtureと違って自動的にロードしてくれないので、
各テストのsetupメソッドでファクトリを呼び出してインスタンス化とかしておかないとだめ。
逆に、細かくセーブ前、セーブ済み、属性のみ、スタブのみとかコントロールできるので
それはそれでいいかも。
というわけで、ちょっと使い込んでみます。
# 調べている時に、YAMLの中に<%= %>でRuby記述できることを今回初めて知ったのは内緒
PR