タグ

ブックマーク / moro.hatenadiary.org (10)

  • RubyKaigi 2011で発表しました - moroの日記

    RubyKaigi 2011の二日目が終わりました。来場者の皆さん、スタッフの皆さん、誠にありがとうございます。 いろいろ忙しかったり、緊張したりもしたけれど、とても楽しい時間を過ごせています。三連休完全外出を許容してくれた子にもありがとう。 さて、今日は発表枠をいただいて、RSpecでテストを書きながらRailsアプリを開発する話をしました。 Test Context Arrangement Recipebook View more presentations from Kyosuke MOROHASHI 講演中にも申したとおり、最初のRubyKaigiが行われた2006年(の会議終了ちょっとあと)からいままでの5年間ほぼ毎日、RSpecとRailsを使ってきました。今日はそこで見いだしつつある【独自研究】を話させていただきました。講演終了後から懇親会で声をかけていただいた方々には好評

    RubyKaigi 2011で発表しました - moroの日記
  • Thin厨がRails2.3.5を使うときに注意すること - moroの日記

    thinコマンドで起動しようとすると、thinがrack 1.1.0をactivateしたあとにRails 2.3.5が~>1.0.0を求めるので落ちます。 エラーメッセージだけ見ると、railsのgemをロードし損なったように見えるので注意。 Rails側が先にrackをロードするように、script/serverで上げれば問題なし。

    Thin厨がRails2.3.5を使うときに注意すること - moroの日記
  • フック、そんなのもあるのか!! # CukeやRSpecの前後処理フック - moroの日記

    Akabane.rbとかやってみたい今日この頃です。土曜の9:00AMからまるます屋とかで。まぁ私自身はだいぶ先まで土日のマイルは枯渇してるんですけど。 それはそうと、RSpecの全Example(it)やCucumberのすべてのシナリオで前後処理をしたくなることはありませんか? ありますよね。 たとえばconfgatronというgemがあって、設定をまとめる依り代になってくれるんですが、これがSingleton(≒グローバル変数)なので各テストの前後にちゃんとリセットしたい場合とか。 ドキュメントをあたってみたらちゃんと用意されていたのでメモです。 RSpec Spec::Runner.configure(&block)のブロック中でbefore()とかafter()を書きます。Railsの人だとspec/spec_helper.rbあたりに書いてくださいな。 Spec::Runner

    フック、そんなのもあるのか!! # CukeやRSpecの前後処理フック - moroの日記
    ikasam_a
    ikasam_a 2009/12/05
    これは知らんかった: "ExampleGroupのタイプ別にもかけられます"
  • OSC2009 Tokyo/FallでCukeとRSpecの紹介をしました - moroの日記

    休んでいるうちにずいぶん時間が経ってしまいましたが、10/31のOSCにてお時間をいただき、Railsの昨今のテスト事情について紹介させていただきました。普段から申しているようにCucumberとRSpecをぐいっと推しています。 Rails testing environment, 2009 fallView more documents from Kyosuke MOROHASHI.あとはRSpec方面で、subjectやitsの使い方について、使いながら考えているようなことを書いています。 前にオブラブ方面でCuctomMatcherの話をしたときに、簡単なCustomMatcherを量産するのはだるいんじゃない?という懸念があったんですが、その一つの解としてits()はありかなー、と。使い分けはこんな風になると思います。 CustomMatcher作る 検証内容が複雑になるとき エ

    OSC2009 Tokyo/FallでCukeとRSpecの紹介をしました - moroの日記
  • rescue_fromに集約したエラー処理をテストするのに必要なたった一つの方法 - moroの日記

    タイトルは釣ry。もう古いか 最近はCucumberをつかってテストを外から書こうブームが来てます。で、ちょっと困ったのがresuce_fromとの併用。 私の理解が間違っていなければ、rescue_fromは(復帰する必要性の低い/復帰できない)例外をApplicationControllerでまとめて処理するために役立つものです*1。たとえばAR::RecordNotFoundをてっぺんで補足してNot Foundするとか*2。 そういう性質なんで当然テスト対象にすべきですが、Cucumber同梱のRSpecだとそこを外してしまっています。つまり、rescue_fromのレイヤまであがってきた例外がそのまま呼び出し側(実行しているテスト)まであがってくる、と。これはテスト中に例外が発生した場合には便利なんでしょうが、rescue_fromを使ってエラー処理をまとめたい場合には不便です。

    rescue_fromに集約したエラー処理をテストするのに必要なたった一つの方法 - moroの日記
  • オブジェクト倶楽部2009夏イベントで話しました - moroの日記

    オブジェクト倶楽部2009夏イベントの若人セッションでお話しする機会をいただきました。 タイトルは「プロジェクト特化言語 という夢を見たんだ」です。自然言語で仕様を記述できるCucumberと、英語ライクな書き方を目指す方向から徐々に方針転換を遂げつつあるRSpecという構図を見立て、対お客様/対開発メンバーというそれぞれのレイヤでのコミュニケーションツールとしてのテスティングフレームワークが云々という話をしました。CukeのstepとRSpecのCustomMatcherが大きなトピックです。あとは最近流行のsubjectについても少々。 TDD frameworks let me dream "Project Specific Language"View more presentations from Kyosuke Morohashi.少し前から話したかったことをいろいろ話せてすっき

    オブジェクト倶楽部2009夏イベントで話しました - moroの日記
  • Railsテスティング環境2009新春 @仙台Ruby会議01 - moroの日記

    仙台Ruby会議01で、Cucumberを用いた今流行のRailsテスティング環境について話しました。 2009-01-25追記 どうもSlidesareで公開したスライドがうまく表示されませんので、いったん埋め込みは削除しました。 スライドのダウンロードはできるようですが、とりあえずDropboxでも落とせるようにしておきます。 http://dl.getdropbox.com/u/108726/rails-testing-env-early-2009.pdf スライドに興味のある方は、お手数ですが、こちらのPDFをご覧ください。もうちょっと他の人のマシンなんかでも試してみます。 追記ここまで ここから元エントリ 今回はustでの見辛さを考慮して、話す前にSlideshareにあげてたでござる。いかがでしたでしょうか? IRCでオチの誤訳ふいた。書いてないことを読み取って感極まった勢いで

    Railsテスティング環境2009新春 @仙台Ruby会議01 - moroの日記
  • ぼくが見ているレール(map.resouces編) - moroの日記

    先日のQConで大場さんもおっしゃっていたことですが、Railsで開発をする上でものすごく重要なポイントに、Railsの敷いたレールから降りないというのがあります。別にコレはRailsが不自由だというわけでなく*1、通り一遍のものしかできないというわけでもなく、ただ基盤と相性の悪い設計すればあとで苦労するという、当然の話なわけです。 最近、私を含めいろいろな方が「レールから降りないで作るのが重要」と話しています。が。じゃあそのレールはどこにあるのかという話はあまり聞かれません。ということで、ふだん私がRailsアプリを設計するときに意識しているレールを言語化してみて、議論なりのたたき台にしたいな、と思った次第です。 とはいえDB周りは「羽生さんのERDレッスン嫁」で7割くらい済む話*2なので、まずはコントローラから。 設計指針としてのmap.resouces Rails 2.xにおいて、コ

    ぼくが見ているレール(map.resouces編) - moroの日記
  • Webratがスゴい(続:Cucumberがアツい) - moroの日記

    Cucumberを使って、Railsアプリのテストを高い抽象度で書き進めていくために欠かせないのがWebratというライブラリです。前回のCucumber全体像の紹介に引き続き、こちらWebratを紹介します。今回も長いです。 2008-01-27修正 id:amacouさんから指摘を受けまして(と、たぶんsatokoさんも以前おっしゃってた)webrat_steps.rbの生成先パスを修正。 語: ${RAILS_ROOT}/step_definitions 正: ${RAILS_ROOT}/features/step_definitions ありがとうございます。 今回のまとめ Webratすごい 画面遷移を「リンクをクリックする」「ボタンをクリックする」と書ける リンクのアンカーテキストではまだ日語が使えず。さきほどパッチ送ったので早晩書けるようになるはず。 フォームの入力項目もラ

    Webratがスゴい(続:Cucumberがアツい) - moroの日記
  • Cucumberがアツい - moroの日記

    仕事で作っているRailsアプリにCucumberを突っ込んでみました。これは熱い。いやもう十分、お客さんに見せて分かってもらえる気がします。たぶん。もちろん準備は必要だし、受け入れ仕様をすべてお客さんに書いてもらうというのは難しいですけど*1。 とりあえず導入はこちらから。最近はNokogiriが必要です。あとTerminal.appで--no-colorつけずに実行するとTerminal.appがひどいことになるのでiTermお薦めです。 http://github.com/aslakhellesoy/cucumber/wikis/ruby-on-rails 2010-11-10 SEO的に。この記事を書いてから2年、いろんなCucumberの使い方を調べました。そのノウハウを達人出版会にてにまとめました。よろしければこちらもどうぞ。 http://tatsu-zine.com/bo

    Cucumberがアツい - moroの日記
  • 1