RAILS PRESS RUBY on RAILS, it’s DRY and COOL …

RSS Feed

RAILS PRESS RSS

Tag Cloud

はてなブックマーク - railspress.matake.jp の注目エントリー
象形文字くさび形文字ミイラそろばんの玉そろばんコーラン占いの板?象牙大英博物館
« 前の3件
Tagged by テスト

Posted on
2008/10/28

Tags
ActionController, filters, テスト, ノウハウ

0 Comment

この記事をはてなブックマークに登録 この記事のはてなブックマーク数 この記事を livedoor クリップに登録この記事の livedoor クリップ数 このエントリを del.icio.us に追加
ブックマークに追加する

Functional Test でリクエスト発行時(GET/POST/PUT/DELETE)に before_filter/after_filter をかける方法

Functional Test ですべての @response.body と @response.headers の内容をチェックしたくて、リクエスト発行時に after_filter 的なことをしたので、方法をメモ。

以下の記事が非常に参考になりました。

functional test をめぐる冒険 - Rails で行こう!

やってることは、単純に get とか post とかの内部で呼ばれてる process というメソッドを、RAILS_ROOT/test/test_helper 内で書き換えているだけ。

LANG : RUBY
  1. def process_with_assert_no_wapi(action, parameters = nil, session = nil, flash = nil)
  2.   process_without_assert_no_wapi(action, parameters, session, flash)
  3.   assert_no_wapi
  4. end
  5. alias_method :process_without_assert_no_wapi, :process
  6. alias_method :process, :process_with_assert_no_wapi

以下のような functional test があった場合、get(:index) と get(:show, ...) の前後で自動的にフィルタをかけています。

» このエントリーには続きがあります。続きを読む »


Posted on
2008/10/09

Tags
iKnow!, ubuntu, テスト

0 Comment

この記事をはてなブックマークに登録 この記事のはてなブックマーク数 この記事を livedoor クリップに登録この記事の livedoor クリップ数 このエントリを del.icio.us に追加
ブックマークに追加する

Ubuntu 上で走る autotest の結果を MacBook の Growl に表示させる方法

こちらのブログでは遅ればせながら、先月末でドリコムを退職し、今月からiKnow! (Cerego Japan) で働いています。

iKnow! でも開発マシンは MacBook のままですが、開発用サーバマシンとして ubuntu を支給されたので、ubuntu から MacBook の開発ディレクトリをマウントして、DB やら mongrel やらは ubuntu 上で動かしています。

ubuntu には(てか apt には?)Mumbles という Mac の Growl に似た notification ツールがあって、そいつから LAN 上の Growl に notification を送れます。

LANG : shell etc.
  1. ~/.autotest

に、以下のように記述しておけば OK

LANG : RUBY
  1. require 'autotest/redgreen'
  2.  
  3. module Autotest::Mumbles
  4.  
  5.   def self.mumbles title, msg, successed
  6.     system "mumbles-send -g bianca.cerego.co.jp \"#{title}\" \"#{msg}\"" unless successed
  7.     system "mumbles-send \"#{title}\" \"#{msg}\""
  8.   end
  9.  
  10.   Autotest.add_hook :red do |at|
  11.     errors = at.results.slice(/(\d+)\s+tests,\s*(\d+)\s+assertions,\s*(\d+)\s+failures,\s*(\d+)\s+errors/)
  12.     mumbles "TESTS FAILED", errors, false
  13.   end
  14.  
  15.   Autotest.add_hook :green do |at|
  16.     #res = at.results[/\d+ tests.*$/]
  17.     res = at.results.scan(/Finished.*failures/m).to_s.gsub(/\e\[32m/,'')
  18.     mumbles "TESTS PASSED", res, true
  19.   end
  20. end

これで開発マシンと開発サーバが別のマシンでも、快適な autotest 環境を構築できますね。MacBook で autotest を走らせると、開発の手が止まる程遅くなるからな...

ちなみに Growl では notification に緊急度のようなのを付与できて、MacBook ではそれを元に成功と失敗で色分けしたりしてましたが、Mumbles から Growl には title と description しか送れないようです。

上記の設定では、テスト失敗時にだけ Growl に通知して、Growl 側の設定で Mumbles からの通知の緊急度を上げています。


Posted on
2008/03/05

Tags
MacOSX, インストール/設定, テスト, ノウハウ

0 Comment

この記事をはてなブックマークに登録 この記事のはてなブックマーク数 この記事を livedoor クリップに登録この記事の livedoor クリップ数 このエントリを del.icio.us に追加
ブックマークに追加する

MacBookでautotest環境を整備する(Test::Unit編)- ZenTest / redgreen / Growl

Railsのテスト環境を改めて- MacOSX / RSpec / ZenTest / Growl」を参考に、MacBookでautotest環境を整えてみました。

上記のサイトではRSpecでのテストを前提に書かれていますが、僕はとりあえずTest::Unitを使ってのautotest環境が欲しかったので、若干~/.autotestの記述内容だけ上記サイトの手法からアレンジしてあります。以下自分用のメモ。

Growlのインストール

2008年3月5日現在、Growlのサイトが落ちているようなので、代わりにGrowl DownloadからGrowlをダウンロード。Growlのインストールは「Growl.mpkg」をダブルクリックするだけ。ここでgrowlnotifyも一緒にインストール。

LANG : shell etc.
  1. cd /Volumes/Growl\ 1.1.2/Extras/growlnotify/
  2. ./install.sh

» このエントリーには続きがあります。続きを読む »


« 前の3件
テストタグ