タグ

rubyに関するEhrenのブックマーク (200)

  • ricollab Web Tech Blog » Blog Archive » Mock と Stub について

    初めまして、リコーの沖田です。この度私もこの blog を書くことになりました。以後よろしくお願いいたします。 みなさんテストは好きですか?私も含めて私の同僚は皆テストが大好きなので、しばしばテストの議論で白熱しすぎてしまいます。今日はそのテストの中から Mock(モック) と Stub(スタブ) について書いてみたいと思います。 Test Double まずテストにおける Mock と Stub についてですが、これらは Test Double という概念の一部です。Double とは代役という意味で、テスト対象となるシステムが依存する外部のコンポーネントの代わりに、それらしく振舞ってくれるコンポーネントを代役として利用しようということです。 例えば Web アプリの Controller の単体テストがしたい場合に、Model の実装が完了するまでテストができないっていうのでは大変です

    Ehren
    Ehren 2010/06/07
  • Route 477(2010-06-05)

    ■ [ruby] Rubyの新リファレンスマニュアルをコマンドラインから簡単に引くためのツールを書いた Rubyリファレンスマニュアル刷新計画(通称るりま)のリファレンスを、コマンドラインから簡単に引けるようにするgemを作りました。 多くの人はWeb版か、chm版を使ってると思いますが、同じものがコマンドラインから見れるようになります。 インストール方法とかはgithubに書いてますが、 $ sudo gem install myrurema $ rurema --init $ rurema Array#length Array#length --- length -> Integer --- size -> Integer 配列の長さを返します。配列が空のときは 0 を返します。 p [1, nil, 3, nil].size #=> 4 という感じです。初回のみ、データベースを構築す

    Route 477(2010-06-05)
    Ehren
    Ehren 2010/06/05
  • Rubinius 1.0.0 が速すぎてびっくりした - kなんとかの日記

    (追記: Rubiniusとは、Ruby自身で書かれたRubyの処理系。Javaで書かれているJRubyとともに、期待を集めているRuby処理系のひとつ。) そもそもこのブログは Rubinius で遊んだ結果を紹介するために始めたようなものだったのに、せっかく Rubinius 1.0.0 がリリースされたのにスルーしてた (ごめんよ Evan)。 ようやく Rubinius をインストールしてベンチマークをとったので、衝撃的な結果とともに紹介する。 インストール インストールは簡単。Web サイトからダウンロードし、コンパイルするだけ。Mac OS X ならバイナリも用意されているけど、今回は使用せず、自分でコンパイル&インストール。なおコンパイルには Rake を使うので、Rubinius をコンパイルするには Ruby が必要。 ### Mac OS X 10.6 で実験 $ wg

    Rubinius 1.0.0 が速すぎてびっくりした - kなんとかの日記
  • Coming Soon...

    Introduction to EventMachine's Lightweight Concurrency Concurrent programming in Ruby gains newfound agility with EventMachine (EM), which introduces two concurrency paradigms: spawned processes and deferrables. Understanding deferrables is key to leveraging this model, as outlined in this guide and in-depth within the LIGHTWEIGHT_CONCURRENCY documentation. Understanding Deferrables What are Defer

    Ehren
    Ehren 2010/05/12
    イベント用ライブラリ
  • None is None is None: Pythonによるデザインパターン

    2009年6月5日 Pythonによるデザインパターン 『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)を読みました。 私はPythonでばっかり遊んでいるのですが、PythonRubyとは基は同じ機能のように見えるので、Pythonによるデザインパターンに翻訳してみようと思います。 まず、デザインパターンの原則から 変わるものを変わらないものから分離する インターフェイスに対してプログラムし、実装に対して行わない 継承より集約 委譲、委譲、委譲 必要になるまで作るな(これは「Rubyによる~」の筆者による) これって、プログラミング全般に通じるものがあるようにも感じます。 Template Method Strategy Observer Composite Iterator Command Adapter Proxy 似た趣旨のブログ tachi

  • サディストのための Ruby メトリクス計測入門 - たかみやの日記

    ふぬけたコードをきたえるRuby で書かれたソースコードのまずい部分をメトリクス計測ツール (reek, roodi, flog, flay) を使って機械的に発見しましょうというお話です。それぞれのツールは次のことをチェックしてくれます。 reek: リファクタリングできそうな部分を発見 roodi: (reek とは別の指標で) リファクタリングできそうな部分を発見 flog: 複雑すぎる部分を発見 flay: 重複している部分を発見ポイントは、さまざまなチェックを rake コマンド一発でビシッとできるようにすることです。こうすることによって、その日の気分に左右されることなく一貫した厳しいチェックが繰り返しできるようになります。なおこの日記は、この記事を一部参考に書きました。ありがとうございます。 使い方コマンド一発で計測できます。 % rake quality もしコードにまずい部

    Ehren
    Ehren 2010/05/07
    リファクタリング用?
  • Qu'ils mangent de la X'ruby(クリスマスリリースがないならクリスマスRubyを作ればいいじゃない) - ずっと君のターン

    この記事はRuby Advent Calendar2009の最終日です。昨日は@tomoya55さんでした。 メリークリスマス! = Merry Xmas! ≒ Merry Xml! ということで、XMLなRubyの話をします。 TokyuRuby会議*1でこんなことを言った人がいました。 「Rubyは90年代のいいとこ取り言語だけど、Scalaは2000年代のいいとこ取り言語だ」 これを聞いた敬虔なRubyistの皆さんはもちろん「2000年代いいとこ取りの結果がXMLかよ!」って思ったと思うんですが /* http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk/docs/examples/xml/phonebook/phonebook.scala */ package phonebook ; object phonebook { val l

    Qu'ils mangent de la X'ruby(クリスマスリリースがないならクリスマスRubyを作ればいいじゃない) - ずっと君のターン
    Ehren
    Ehren 2010/04/28
    これはいいですね。
  • 本当はシンプル: Sinatra,1.0 をリリース

    原文(投稿日:2010/04/17)へのリンク 2007 年末の登場以来,軽量フレームワークの Sinatra web framework には,多くの関心が寄せられてきた。その結果は,現在 Google で "Sinatra" を検索すると,Frank や Nancy に関係するものより上位にランクされるほどだ。InfoQ では Sinarta プロジェクトの創始者である Blake Mizerany 氏から,Sinatra の詳細と 1.0 リリースの内容について話を聞いた。 Mizerany 氏の説明によれば,1.0 がひとつのマイルストーンであるのは,追加されたものよりも,取り除かれたものに理由があるという。 テンプレートに Tilt を採用することによって,かなりの行数のコードが取り除かれました。また,拡張 API の仕様が確定されました。0.9 シリーズにあった API 部分の

    本当はシンプル: Sinatra,1.0 をリリース
  • RSense - Rubyのための最も優れた開発援助ツール

    Ehren
    Ehren 2010/03/21
  • Ruby Best Practices - Full Book Now Available For Free!

    The last few weeks have been a wild ride. Starting in January, I’ve been releasing a chapter at a time here on the RBP blog, and many of those chapters were pretty well commented on. Just for the sake of completeness, here’s a link back to each of those posts: Chapter 1: Driving Code Through Tests Chapter 2: Designing Beautiful APIS / Chapter 3: Mastering the Dynamic Toolkit Chapter 4: Text Proces

    Ehren
    Ehren 2010/03/19
  • メタプログラミングの基本とか - mirichiの日記

    Rubyはメタプログラミングができる言語だ。 高度なことをしようと思うと特異クラスなどの詳細を知る必要が出てくるが、そういうことをそれなりに知っている人でなければ、特異メソッドぐらいは理解できても特異クラスが出てきた時点でよくわからなくなってしまう。 よくある説明とは違う切り口で説明してみよう。 ちょっと長いが気にしない。 1. まず、Rubyでは先頭が大文字の識別子は定数である。 このルールで最もよく使われるのはクラスやモジュールの名前だろう。 これらは定数である。 class Hoge end p Object.const_get("Hoge").name # => "Hoge" p Object.const_get("Hoge").class # => Class Hogeという定数が定義され、そこにHogeクラスを表すClassオブジェクトが入っているわけだ。 つまり上記の定義は(

    メタプログラミングの基本とか - mirichiの日記
    Ehren
    Ehren 2010/03/11
  • インタビュー:[楽天]Ruby活用事例とROMA、Fairy | gihyo.jp

    ビジネス分野でのRubyの利用が徐々に増えてきている昨今ですが、大規模なシステムとなると、まだ多くの面で不安の声があがっているのも事実です。その中で楽天(⁠株⁠)では、2006年よりRubyに対する取り組みをスタートさせ、現在では1日に数百万アクセスという大規模システムでもRailsが採用されているそうです。今回は、同社執行役員であり楽天技術研究所の所長を務める森正弥氏に、Rubyの採用状況やその経緯、実際に行った検証内容などについてお話を伺いました。 Ruby採用のきっかけは"志の一致" Q: まず、御社のシステム開発にRubyを導入することになった経緯を教えていただけますか。 A: 主なきっかけは2つあります。ひとつは、2006年下期あたりから楽天技術研究所(楽天技研)の活動を格化させようという動きが社内でありまして、その中で、どういったことをやっていくか、まつもとさん[1]とディス

    インタビュー:[楽天]Ruby活用事例とROMA、Fairy | gihyo.jp
  • ホワイの(感動的)Rubyガイド

    このはホワイ・ザ・ラッキースティフ(why the lucky stiff)により愛情を込めて書かれた。 ~ 目次 ~ このについて コンニチハ、Ruby このを開く 犬の話 赤い太陽が昇る はどのように始まるか (漫画のキツネと学ぶ)短時間の(そして願わくは辛くない)Rubyコース 言語と、言語で意味しているもの 品詞私がまだあなたのことを十分子供扱いして いなかったなら あなたの成長を促すための例題 そして短い旅はそっとクッション停止する 浮いている小さなコードの葉っぱ アンブローズにおけるステータスシンボルとしての葉っぱ 小さくてほとんど価値のないもの 妄想をつなぎ合わせる ブロックの奇跡 ルールを作るものと夢を生きるもの これは権利を奪われた人のため コンピュータのある城 娘のオルガン教師の話のつづき ヤギは映画を全部見たがっている 盗まれたくじ主 ルールを作る者たち 夢を

    Ehren
    Ehren 2010/03/05
  • http://gendosu.ddo.jp/redmine/projects/rails/wiki/Page_index

  • TokyoRubyKaigi03 - ぷっちん日記(2010-03-01)

    ■ TokyoRubyKaigi03 昨日はTokyoRubyKaigi03に参加してきました。すごい勉強になる内容でとても面白かった。スタッフ・講師の皆様、ありがとうございました! 私のワークショップ「routes職人への道」の資料を以下にアップしましたので、見たい人はどうぞ。参加者が少なくて残念でしたが、参加してくださった方には満足してもらえたようなので良かったと思います。この資料は、"東大のシケタイ時代" のことを思い出してキリキリ作ったのでそれなりにドリルのように使えるんじゃないかと思っています。 Railsは少し触ってるけどroutes.rbはまだよくわからない、RESTfulもよくわからない、という人におすすめです。 なお、Rails3にも触れているけど、今後の仕様のなりゆき次第で、最終形ではないとおもうので注意してください。書き方もさることながら、背景となっている世界観や、考

  • TokyoRubyKaigi03 - Yugui, Yugui tokyorubykaigi on USTREAM. Conference

    Not rated yet. You must be logged in to rate this video.

    Ehren
    Ehren 2010/02/28
  • t-wada の日記(旧)

    2004 年以来 10 年弱はてなダイアリーを書いてきましたが、「はてな エンジニアブロガー祭り」登壇をきっかけとして、はてな blog に移転いたしました。 http://t-wada.hatenablog.jp/ はてな blog に移行する際に、はてなダイアリーの記事を丸ごと移行するオプションもありました。しかし、旧日記はそのままの見た目で、そのままの URL であって欲しいと考えましたので、アカウント移行はせず、当日記はそのままにすることにしました。 こんにちは、だんだんブログ勘を取り戻していきたい和田です。このエントリは TDD Advent Calendar 2013 の 11 日目のエントリです。このエントリでは、最近行ったテスト駆動開発関連の講演や寄稿に関して、この機会にまとめておきたいと思います。 DevLOVE 現場甲子園 まず 11/9 にDevLOVE現場甲子園20

    t-wada の日記(旧)
  • Ruby Quicktips

    Random Ruby and Rails tips. This blog is dedicated to deliver short, interesting and practical tidbits of the Ruby language and Ruby on Rails framework. Read more... Your submissions are more than welcome!

    Ruby Quicktips
    Ehren
    Ehren 2010/02/23
  • Selenium

    Selenium automates browsers. That's it!What you do with that power is entirely up to you. Primarily it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should) also be automated as well. Selenium WebDriver If you want to create robust, browser-based regression automation suites and tests, scale and di

  • rails.info

    This domain may be for sale!