sql >> データベース >  >> NoSQL >> MongoDB

MongoDBとMongoidを使用してRails3で適切なデータベーステスト(TDD)を実行する方法

    私を正しい方向に向けてくれたカイルのおかげで、それを機能させる方法を見つけました。

    したがって、基本的には、実行するテストケースごとにすべてのコレクションをmongodbにドロップするのがコツです。これは少し過激ですが、機能します。ただし、テストデータベースにはデータがまったく保持されないことに注意してください。

    最後に、そのリンクを見つけました: http://adventuresincoding.com/2010/07/how-to-configure-cucumber-and-rspec-to-work-with-mongoid

    そして基本的にあなたがする必要があるのは簡単です:

    あなたにブロックを追加しますspec_helper.rb:

    RSpec.configure do |config|
    
    # blabla other confs
    
      config.before :each do
        Mongoid.master.collections.select {|c| c.name !~ /system/ }.each(&:drop)
      end
    
    # blabla other confs
    
    end
    

    Mongoid 3の場合:

     Mongoid.default_session.collections.select {|c| c.name !~ /system/ }.each(&:drop
    

    これにより、データベース内のすべてのコレクションが効果的に強制終了され、毎回新しいテストを実行できるようになります。

    アレックス



    1. MongolabRESTAPIはどのように認証しますか

    2. _Idをオブジェクトまたは文字列としてMongoDBに保存しますか?

    3. Mongoコレクションをループして、すべてのドキュメントのフィールドを更新します

    4. テスト構成で2.0FakeApplicationセットアップを再生します