BT

オートテスト-隠されたツールの宝石

| 作者: Werner Schuster フォローする 6 人のフォロワー , 翻訳者 編集部 フォローする 0 人のフォロワー 投稿日 2007年12月14日. 推定読書時間: 2 分 |
Rubyコミュニティの秘密の一つは、なぜたくさんのデベロッパ達がIDE上でテキストエディタを好むのかということである。その理由の一つはRuby内で書かれているツールのグループである。それはコーディングの地道な作業を大幅に自動化するのに役立つのである。これらのツールのいくつかは最近Pat Eyler氏のブログ上のポールで紹介されている(source)

これらのツールの一つはZentest(サイト・英語)パッケージに含まれているオートテストである。そのインストールは至ってシンプルなものである。
gem install zentest 
Zentestがそれらでユニットテストとあなたのコードを同期化するのを助ける一方、オートテストは確実にある一つ事をする。一旦始まったらファイルが保存されるた度にテストを再実行するのだ。保存されたファイルの中でコードに対応するテストのみを再実行するところが賢明なのである。

オートテストのクリエーターであるEric Hodel氏はオートテストを行うための仕事のやりかたを説明した(source)
オートテストを書く前に私は構文的に正しいきめの細かいセーブを作っていたのです。どのテストを実行するか選ぶ必要がなくなるのでテスト実行を自動化するためにオートテストを書いたのです。変更点はとても少ないのでコマンドラインを編集するのにはほとんど時間を費やしませんでした。
これはテストを実行するにおいてもう一つの利点を意味している。コードは保存の度にロードされチェックされる。これをコード上でシンタックスとセマンティックチェッカーのような静的アナライザーを増やしたり、保存する度に動かしている現代のJava IDEと比較してみて欲しい。デベロッパたちは未だ好みのエディタに依存している一方、同じくらいのレベルの自動チェックがAutotestでは成されて いる。

プラグインインターフェースもまたオートテストの拡張を可能にする。プロジェクトルーツに ".autotest"ファイルを作るだけでいいのである。これにおいて既存のプラグインを要するかもしくは多様なフック用にカスタムハンドラを書いて欲しい。
Autotest.add_hook :red { |autotest|   p "Failures!" } 
最初のパラメータはこれがフックするフックの名前である。このケースにおいてはテスト障害である。このコードはテストが通らなかった場合に単純に "Failures!"をプリントアウトする。これはまたテスト結果によって、もしくは単純に保存の度に他のツールの呼び出しを可能にする。Emacsを伴う統合用のプラグインか、もしくはハウリング(source)が入手可能である。

あなたはオートテストを以前聞いたことがあるだろうか?そしてそれを使おうと考えているだろうか?

原文はこちらです:http://www.infoq.com/news/2007/12/autotest-tool

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには 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