ActiveRecord
そのため、Rubyでのテストの典型的なアプローチであるトランザクションでテストを囲むことができます。その方がパフォーマンスが向上する可能性がありますが、データベースをクリーンに保つのにも役立ちます。
しかし、その通りです。非永続データベースは、Neo4j で提供されている、テスト用の一時データベース用のツールです。ただし、これはJRubyを実行している場合にのみ利用できると思います. しかし、私はこれに出くわしました:
https://groups.google.com/forum/#!topic/neo4j/7xeEPWEiqD0
Neo4jサーバーを「メモリ内」モードで起動できるプロジェクトへのリンクはどれですか(非永続データベースを使用):
https://github.com/jexp/neo4j-in-memory-server
これは Neo4j 2.0.0 の例を示しているため、それ以降のバージョンで機能するかどうかはわかりませんが、テスト データベースには試してみる価値があるかもしれません。
編集:私が考えたもう1つのことは、vcr
宝石を使用することです:
https://github.com/vcr/vcr
基本的に、サーバーに対して行われたすべてのリクエストを記録してから再生します。これは、結果がべき等である API エンドポイントではうまく機能しますが、Neo4j のようなデータベースで使用する場合は、テストを実行するたびにテストがデータベースをクリアしていることを確認して、常に新しく開始されるようにする必要があります。