質問

Jrubyを使用して動作するRuby on Railsアプリ(RSPEC、キュウリを使用)で大量のテストを並列化するシステムを探しています。キュウリは実際にはそれほど悪くはありませんが、完全なRSPECスイートは現在、20分近くかかります。

私が見つけることができるシステム(Hydra、並列テスト)は、Forkingを使用しているように見えますが、これはJruby環境にとって理想的なソリューションではありません。

役に立ちましたか?

解決

現在、この種のアプリケーションに対して良い答えはありません。つい最近、私はフォークに取り組みました スポーク これにより、プロセスの実行を続け、その中に仕様または機能を再実行することができます。を見てください Jrubyhub 私がスポークの使用方法の例のためのアプリケーション。

そうかもしれない アプリケーション用のスポークインスタンスをスポークインスタンスに出してから、複数のスレッドリクエストを送信して、さまざまな仕様を実行します。しかし、その後、あなたはRSPECの内部にスレッドセーフに依存していますが、残念ながら、そうではないと確信しています。

たぶん、私のコードを出発点として取得し、スポークインスタンスのクラスターを構築してから、テストスイートをそれらに配布できるクライアントを持つことができます。メモリを保存することはなく、起動するのに長い時間がかかりますが、一度開始して繰り返し実行するためにそれらを再利用するだけで、効率が得られるかもしれません。

より多くのアイデアについては、user@jruby.codehaus.orgまたは#jruby on FreeNodeでお気軽に立ち寄ってください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top