2011-10-16 7 views
9

Ruby's VCRのJava代替手段はありますか?RubyのvcrのJava代替手段ですか?

私が理解する限り、VCRを使用する利点は非常に大きく、結果を記録してローカルに保存することができます。次にテストを実行する必要がある次の時から、最初の実行から記録されたデータで実際のデータベースヒットをモックアップすることができます。

  1. Javaの世界に類似したものはありますか?
  2. もしそうでなければ、実装しようとするとどのようなボトルネックが発生するのでしょうか?

VCRはHTTPのやりとりしか記録しませんが、テストする必要のない他のチームのAPIへのあらゆる種類のデータベース操作/関数呼び出しを記録するためのこのようなアプローチは、基本的には私を緩和しますそれを自動化することによって非常に多くのものを嘲笑している。

+0

データベースに書き込むテストを繰り返し実行する場合は、[dbunit](http://www.dbunit.org/)を参照してください。 –

答えて

9

チェックアウトbetamax

HereはRubyの単体テストとVCRの一例です。それはVCRのグルーヴィーポートです。それはJVM上でどんな言語でも動作するはずです。

VCRのようなライブラリを使用してDBのやりとりを記録/再生する方法については、Sven Fuchsがこのアプローチとdidn't see much benefit to itを試しました。

+0

返信いただきありがとうございます。Sven Fuchsの場合、定期的なレールプロジェクトを使用していたのでデータベースの初期化時間が非常に短くなる可能性があります。しかし、私の場合、データベースを回そうとすると(Javaで)私は10分の初期化時間を得るでしょう!私はいつかJavaポートを書いて、それがどのように私のために働くのかを見てみたいと思う。 HTTPインタラクション録画は残念なことに私の懸念事項ではありません。 – zengr

+0

betamaxリンクはgithubへの最新のリンクです。 - > https://github.com/betamaxteam/betamax –

0

チェックアウトanystub。これはjava-libです。 HTTPトラフィックのみでなく、String get(String... keys)の呼び出しを記録/再生することができます。

関連する問題