【Ruby】Ruby on Rails Part7at PHP【Ruby】Ruby on Rails Part7 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト54:53 09/05/11 23:16:54 hoges テーブルに対する fixture(ymlファイル) を2種類作っているのですが、 describe "○ができること...02" が走って fixtures :hoge_for_some_cases がロードされた後、 describe "○ができること...03" の it "D..." do が動くときに、 fixtures :hoge_for_some_cases で insert されたデータが残っているようです。 これは describe "○ができること...03" で期待する条件とは違うため、テストが失敗します。 ○質問1: fixture によるデータ投入は、spec が起動されるときに一度だけなのか? fixtures という行を通過する度になるのでしょうか? # fixtures という行を通過する度に、 # delete from foo と # hoge.yml の中身の全件 insert が走る? describe "○ができること...02" のブロックを消し、fixtures :hoge_for_some_cases が動かないようにするれば、 describe "○ができること...01" も describe "○ができること...03" も動きます。 ○質問2: fixtures :hoge_for_some_cases の中身をfixtures :hoge に書いてしまえばいいのでしょうが、 データ件数が多いため、describe ごとに yml ファイルを分けたいのですが、これは rails 的ではないのでしょうか? ○質問3: また、ひとつの describe が終わるごとにデータが truncate されるとうれしいのですが、それはどうすればいいのでしょうか? (これも Rails 的ではない?) ○質問4: ちなみに spec を実行後に DB の中身を覗くと、レコードが残っているので、これはそういうものみたいですね。 ※fixture で投入されたデータのトランザクションと、 テストメソッドの中で model.save 等で保存されるトランザクションは違う? 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch