BT

DevverでRubyのテストを速くする

| 作者: Mirko Stocker フォローする 0 人のフォロワー , 翻訳者 編集部N フォローする 0 人のフォロワー 投稿日 2009年9月7日. 推定読書時間: 2 分 |

原文(投稿日:2009/08/30)へのリンク

よいテストスィートの重要な特性として、速いことである、速ければ速いほどよいのである。しかし、時間がたつと、テストはどんどん増え、テストが終了するまでだんだん時間がかかる。一つの対策は、いくつものテストを並行に走らせることで、おそらくいくつものシステムの上で(結局、テストは、いかなる相互依存性を持つべきでない)。ここで登場するのが、Devver comes into play: Devver ("developer"のように発音する) で、テストをクラウド上で並行に走らせる。例えば, CruiseControl.rbの結合テストスィートがたった17秒で終わる、一方ローカルマシンでは、59秒かかった。

Devverは、インストール時、gemの形式であり、プロジェクトのRakefileは、新しいタスクを例えば次のように持っている、 rake devver:test この場合、すべてのユニット、機能そして結合テストをクラウド上で実施する。

InfoQは、DevverチームのBenjamin Brinckerhoff氏と話して、どのようにテストを速めることができるのかを聞いた:

我々は、テストを分割して、たくさんのマシン間に分配します。各マシンは、完全なテスト環境をもっていて、テストデータベースやgemを持っています。

では、ユーザがテストを走らせるのに追加のgemが必要になったらどうなります?

問題ありません。大抵のユーザは、Railsのプロジェクトを持ってますから、デフォルトで'rake gems:install'とやって必要なgemをインストールします(各ユーザは各自固有のgemセットを持っています)。もし何らかの理由で、それがうまくいかなかったら、ユーザは、gemをインストールするステップを設定できます。例えば、ユーザは代わりに'geminstaller'を走らせることができます。

テストが速くなるのは、確かに助かりますが、バージョンの違うRubyも並行に走らせられますか?

現在のバージョンでは、Rubyの複数バージョンをサポートしていませんが、しかし将来、サポートする計画でいます、特にその要求がたくさんあればですね。

Devverは、現在ベータバージョンでこの期間は、 無料である。その後、 "オープンソースのプロジェクトについては、Devverは、無料で提供され、オープンソースでなければ、月額の料金がかかります。"と言う。Devverについてさらに詳しく知るにはDevverの知識ベースサイト を見るか、あるいはサインアップするとよい。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT