タグ

TDDとrspecに関するt-wadaのブックマーク (12)

  • TDDを諦めることと、RSpecをやめること - 高柴ラボ

    2014-10-17 TDDを諦めることと、RSpecをやめること Ruby on Rails Ruby RSpec 開発手法 最近Web上でも仕事場でも、RSpecをやめて別のテストフレームワークに変えようと思っている……みたいな話をちょくちょく見聞きするようになった。僕がRuby on Railsで開発を始めた2012年8月当時、すでにRSpecはテストフレームワークのデファクトと言ってよかった。一斉を風靡したRSpecが、なぜ今見直され始めているのか。 きっかけになったのは今年4月の、Rails作者であるDavid Heinemeier Hansson(以下DHH)によるTDD is dead発言だと思う。 5月にはこの発言によるTDDへの風評被害を重く見たKent Beck*1が、レフリーにMartin Fowler*2を迎え、DHHと相対するドリームマッチが開催された。この会談の

    t-wada
    t-wada 2014/10/20
    RSpec の話と TDD の話が混ざっている印象。個別のツールや狭義の TDD (TDD 三原則とか) に拘ったり怯えたりするのは生産的でないと思う。TDD やれば偉いわけじゃないし、やらないと悪いわけでもない。
  • Better Specs. Testing Guidelines for Developers.

    What is Better Specs Better Specs is a collection of best practices developers learned while testing apps that you can use to improve your coding skills, or simply for inspiration. Better Specs came to life at Lelylan (open source IoT cloud platform) and checking out its test suite may be of inspiration. Better Specs focus on Rails testing, but our goal is to create testing guidelines covering mos

    t-wada
    t-wada 2012/10/04
    RSpec の良い/悪い書き方の比較サイト。これは良いな!
  • 私はRSpecでテストをこんな感じで書いてる - アジャイルSEを目指すブログ

    私がRSpec使ってテスト書く時はこんな感じで書いてるよ〜ってのを書いてみた。*1 テストを書く順番について TDDでコードを書く場合、先にテストを書く事になります。 そして、そのテストを書く順番ですが、私は下記のような順番で書くように意識しています。 設計する describe を書く itを書く subjectを明確にする before(context)を明確にする その他に、気をつけている点はこんな感じ 別のメソッド呼ぶ時は基的にstubなどで潰す contextは「〜の場合」、it は「〜であること」になるようにする 一つずつ、詳細を書きます。 設計する テストを書き始める前に、まず実装しようとしてるクラス、メソッドを簡単に設計します。 少なくとも、「クラス名」「クラスメソッド or インスタンスメソッド」「メソッド名」「メソッドの戻り値」ぐらいは決めます。 describe を

    私はRSpecでテストをこんな感じで書いてる - アジャイルSEを目指すブログ
    t-wada
    t-wada 2012/08/21
    とてもよい!
  • RSpecによるユニットテストの書き方 — recompile.net

    2012年04月19日 最近、新人のテストコードを見る機会があり、ユニットテストの書き方について考える機会があった。ユニットテストはテンプレートみたいなものがあるので、それさえ押さえれば、誰でも簡単に書くことができる。 ここでは、その方法について紹介したい。サンプルはRSpecで書くが、その他のユニットテストフレームワークでも、応用ができるとおもう。 はじめにごく単純化すると、テスト対象は状態を持ち、入力を与えると何らかの出力を行なうものである。入力が変われば出力は変化するし、状態が変化すると入力が同じでも出力が変わる(かもしれない)。 ユニットテストは、テスト対象の状態を操作し、与えた入力によって意図通りの出力を得られるかを確認する作業のことをいう。なので、ユニットテストを書くときには、オブジェクトの状態ごとにメソッド単位で入力と出力を確認するようにする。 RSpecの疑似コードで書くと

    RSpecによるユニットテストの書き方 — recompile.net
    t-wada
    t-wada 2012/04/19
    RSpec のコードの書き方のテンプレートの良いエントリ。私も大体似た感じの構造 (describe - context - describe - context) で書いています(ちなみに内側の describe は短く # から始めます)。
  • DHH Offended By RSpec, Says Test::Unit Is Just Great

    Ruby Weekly is a weekly newsletter covering the latest Ruby and Rails news. As an outspoken and opinionated guy, David Heinemeier Hansson (a.k.a. DHH), creator of Rails, is no stranger to a little bit of controversy. He frequently sets off interesting debates on Twitter from his @dhh account. The latest is, perhaps, the most involved yet and has been rattling on for a couple of hours today. So wha

    t-wada
    t-wada 2011/03/30
    RSpec と Cucumber を混ぜて議論してはいけないと思うな
  • はじめてのRuby&RSpec - What is it, naokirin?

    TDDBC福岡でRubyとRSpecを用いたTDDを見て、かなり興味が湧きまして、そして少し触ってみることにしました。元々、「次にWebアプリ系を触るときはRubyをやる!」という気持ちはあったので、これも何かの縁と思ってやりました。 1日触ったくらいですが、RSpecはユニットテストのフレームワークというより、BDD(Behavior Driven Development, 振る舞い駆動開発)のフレームワークと言った方がしっくりくる感じがしました。(単純にそのように感じたというだけです。テストというより振る舞いを決めている、という感じが強かったからでしょうか)。 今回の課題は某日経ソフトウェアという雑誌の課題から拝借しまして行いました。ちなみにその某雑誌の方ではC(かC++)で解答がついています。私は見てませんが(笑) 課題内容ですが、36進数を10進数にする、というもの。 今回はそれを

    はじめてのRuby&RSpec - What is it, naokirin?
    t-wada
    t-wada 2011/03/26
    私の RSpec のエントリをお読みいただきありがとうございます! "とくにid:t-wadaさんのRSpecの解説は丁寧"
  • RSpec の入門とその一歩先へ、第2イテレーション - t-wada の日記(旧)

    和田 卓人(@t_wada) 作『RSpec の入門とその一歩先へ、第2イテレーション』はクリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスで提供されています。 #coffee.rb の写経会に招かれた(というよりは押しかけた?)ので、先日の RSpec チュートリアルの続きを記します。このエントリは写経会に参加しながらのライブ更新でした。 (更新) 第3イテレーションも書きました。続きに興味ある方はご覧下さい 前回終了時点のコードと実行結果 前回終了時点でのコードを以下に記します。 message_filter.rb class MessageFilter def initialize(word) @word = word end def detect?(text) text.include?(@word) end end message_filter_spec.rb r

    t-wada
    t-wada 2010/03/07
    id:nobeans share_examples_for に関して説明を追記しました(まだ足りないかもしれませんが)。他にもお気軽にご質問ください。
  • RSpec の入門とその一歩先へ - t-wada の日記(旧)

    和田 卓人(@t_wada) 作『RSpec の入門とその一歩先へ』はクリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスで提供されています。 東京 Ruby 会議 03 の RSpec ワークショップの資料です。このワークショップでは参加者の方に「写経」(コードを書き写すこと)をして貰い、TDD/BDD と RSpec を同時に学べるように都度説明を入れるかたちで行いました。 第2イテレーションも書きました。続きに興味ある方はご覧下さい (更新) 第3イテレーションも書きました。続きに興味ある方はご覧下さい 1st iteration favotter の みたいな NG ワードのフィルタリング機能を RSpec で作りましょう。まずは NG ワードの検出機能を作成します。 このイテレーションでは最初ベタな形のテストコードと実装を書き、だんだんとそのコードを洗練させてゆきま

    t-wada
    t-wada 2010/03/07
    続きを書きました http://bit.ly/bmurK5 他にも質問等あればお気軽にどうぞ。
  • grosser's parallel_specs at master - GitHub

    Speedup RSpec + Test::Unit + Cucumber by running parallel on multiple CPUs. Setup sudo gem install parallel script/plugin install git://github.com/grosser/parallel_specs.git 1: Add to config/database.yml test: database: xxx_test<%= ENV['TEST_ENV_NUMBER'] %> 2: Create additional database(s) script/db_console create database xxx_test2; ... 3: Copy development schema (repeat after migrations) rake pa

    t-wada
    t-wada 2010/01/04
    2CPU 以上なら rails のテストを並列実行させる
  • 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の日記
    t-wada
    t-wada 2009/11/04
    RSpec にとって subject や its が「レール」なんじゃないかなと思っています。便利。
  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

    t-wada
    t-wada 2008/03/31
    充実した記事。そして「TDD とは BDD であり、BDD とは TDD である」と言い切ったのは本当に意義がある。
  • 「スはスペックのスRSpecによるテスト駆動開発の実演」 - 角谷HTML化計画 (2008-02-16)

    ■1 「スはスペックのス〜RSpecによるテスト駆動開発の実演〜」 | View | Upload your own (会場からsshを使えないので、PDFはさしあたってはslideshare.netのダウンロードをご利用ください) なんとか無事に終わりました。この日記で事前に告知できたからか、ustream.tvでの中継を通じて札幌以外の皆さんにもライブで見てもらえたみたい。インターネットすごい。 ちなみに、今回の発表は、デブサミでのid:t-wadaのセッションとテーマはまったく同じなので、デブサミのセッションを偵察していたら、FizzBuzzでも60分ではやりきれていなかった。 だから今回の、Bowling Game Kataは絶対ぜんぶは無理だろうなあ、と思っていたら30分時間を延長してもらえました。感激。札幌 is nice. 発表では質疑応答もできて、ボウリングゲームも完成させ

    t-wada
    t-wada 2008/02/16
    さらに洗練されてる。すばらしい。
  • 1