タグ

TDDに関するbasyuraのブックマーク (14)

  • TDDをめぐる、最近の議論についての私見。 - ふぃーるどのーつ

    はじめに DHH氏のTDD is dead. Long live testing. (DHH)のエントリは、国内でもさまざまな議論を呼び起こしました。ですが、そのセンセーショナルな見出しの影響もあり、「(TDDと同一視した上での)ユニットテストは不要」などの、ミスリードされた論調も見られます。乗り遅れた感もあるのですが、前述のエントリに限らず、TDDについて最近考えていることをまとめたいと思います。 TDD=テストファーストではない ケントベックの「テスト駆動開発入門」や、Uncle BobのTDD三原則の影響もあり、TDDでは、まずテストファーストするのだ、という印象をお持ちの方がいると感じてるのですが、いきなりテストファーストするというのは、教条主義なところがあり、現場に適用するのは敷居が高いのは確かです。 TDDを実践する上で大事なのは、テストによって開発が駆動されることです。すなわ

    TDDをめぐる、最近の議論についての私見。 - ふぃーるどのーつ
    basyura
    basyura 2014/05/08
    開発者テストでのテストは、開発者の意図を確認するために書かれます。対して品質保証のテストは、ユーザー側の視点から、「ストーリーの受け入れ基準を満たしている」ために行われます(書かれます)。
  • 札幌Ruby会議2012に参加して、友情出演とTDDネタで発表してきました - moroの日記

    札幌Ruby会議は、約一年ぶりに記事を書くのにふさわしいビッグトピックですね :-) 9/14..9/16に行われた札幌Ruby会議に参加しました。おかげさまで発表の機会もいただけたのでいくつか発表してきました。 まずは2日めの友情出演枠で、Rails3の闇レシピを紹介しています。ちょっと話題が複雑だったので分かり辛かった方も入るかと思いますが、もう少ししたらgemにしますのでよろしければどうぞ。 3日めは自分の発表でTDDについて発表してきました。 書籍やインターネット上にTDDのトピックがたくさんあって、いろんなテクニックが紹介されていますが、私の見た範囲では「なにを考えながらTDDをしているか」についてはあまり触れられていないように見えたので、それをできるだけ丁寧に説明できないかと思ってのセッションでした。 Railsが出始めの頃のチュートリアル記事に対して「『まずこのテーブルがあり

    札幌Ruby会議2012に参加して、友情出演とTDDネタで発表してきました - moroの日記
  • かっこ悪くて面倒でもテストコードを書こう - 今川館

    Python | 10:08わたしはプログラマーではありませんが、いくつかの仕事でテストコードを見たり書いたりすることがあったので、その過程で思ったことをメモとして残しておきます。コーディングとテストを分けて工数を言う癖をやめようどっちもコードを書くのだから分けて考える必要はないテストコードの重要性は理解しているけど、工数も厳しいし客がテストコードを書くことに工数を割くことを認めてくれない。ありがちな話ですが、それがテストを書かないことの根拠であるならば少し考え直しましょう。コーディングとテストを異なる工程と考えるのをやめてしまえばそんなことに悩む必要はなくなります。つまり、「テストを書きながらコーディングする」のです。だいたい、普段プログラムを書いているときだって手元で動かしながらものを作っているでしょう。それと同じことをプログラムを書いてやればいいだけです。客がテストを書かせてくれない

    basyura
    basyura 2012/04/23
  • アジャイルにTDDしようとしてペアプロして失敗した話 - 水まんじゅう2

    これはTDD Advent Calendarの18日目。 記事としては @mao_instantlife さんの TDDやってみてコメントが減った話 のあと、@cubeon さんの きっと方眼の理から逃れられないお前たちにも告げる!テストコードを手に入れるのだ! の前となります。 最近、新しい開発手法の一貫としてTDDを採用しようとするプロジェクトが出始めている印象があります。 ただし、とりあえず取り入れてみたけれどもうまくいかなくて結局ウォーターフォール方式に逆戻りという例も多いのではないでしょうか。 以前、アジャイルにTDDをしようとしてペアプロして失敗したプロジェクトの話を聞いたことがあるので書こうと思います。 その時のプロジェクトでは数百人月前後の工数をかけてそれまであったレガシーシステムをJavaでリプレイスしようとしていたようです。 それなりの規模のプロジェクトに多いように、さ

    アジャイルにTDDしようとしてペアプロして失敗した話 - 水まんじゅう2
    basyura
    basyura 2011/12/19
  • 札幌 Java カンファレンス 2011開催しました - やさしいデスマーチ

    札幌 Java カンファレンス 2011 with TDD BootCamp 札幌サテライトを開催しました。最終的には、来場者数55名、事前キャンセル6名、ドタキャン1名となりました。スタッフや講師を除外しても50名以上が参加され、当にありがとうございます。当日にはポストできませんでしたが、簡単にレポートをまとめておきます。 今回のイベントは、Java7のLaunchイベントの一環として札幌で何かできないか?という相談を寺田さん(@yosioterada)から頂いた事がキッカケです。そこで開催しなかったら、札幌Javaコミュニティを立ち上げた意味がありません。快諾し、日程を調整した結果、7月9日開催となりました。 ところが、TDD BootCamp東京も運悪くバッティング。実は参加を企んでいたのですが、未遂に終わります。しかし、各地でサテライト開催の企画があがっていたため、札幌も便乗する

    札幌 Java カンファレンス 2011開催しました - やさしいデスマーチ
  • 技術/TDD/JavaにおけるUnitTest時のMockオブジェクトの導入手法 - Glamenv-Septzen.net

    id: 448 所有者: msakamoto-sf 作成日: 2009-10-02 10:11:49 カテゴリ: Java TDD プログラミング JavaでJUnitを使った単体テストのコードを書く時、Mockオブジェクトを使いたい、という場合がある。 例えばテスト対象のインスタンスメソッドの中で、トランザクションやデータベースの接続クラスのインスタンスをnewしていたりする時、 単体テストコードを作る為にMockのトランザクション/DB接続クラスに差し替えたい、というケース。 次のIBM developerworks の記事では、テスト対象のメソッドのインターフェイスを変えずに内部だけをリファクタリングし、 Mockオブジェクトに差し替える手法が紹介されている。 "Unit testing with mock objects" http://www.ibm.com/developerw

    basyura
    basyura 2011/03/16
  • RSpec の入門とその一歩先へ - t-wada の日記(旧)

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

    RSpec の入門とその一歩先へ - t-wada の日記(旧)
  • 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

    RSpec の入門とその一歩先へ、第2イテレーション - t-wada の日記(旧)
  • TDD談義への反応に対する雑感(テスト駆動開発を取り巻く誤解等) - 千里霧中

    先日、twitter上でTDDに関する談義があったのだけれど、気になったのがそれに対するテストや品質の方々の反応。特にTDDの戒めである「品質保証を目的としていない」という書き込みに対してネガティブな反応が多かったのが気になった。 開発経験もあり定義や概念の扱いに注意深い方々なので誤解の可能性はないと思うが、結構問題が入り組んでいるように感じたので、今回テストエンジニアと開発者の視点の差異を焦点にして一部の論点を整理したいと思う。 開発者のいう品質保証の定義 まずTDD談義で開発者が「品質保証のためのテスト」「品質管理のためのテスト」などと呼んでいるテストの定義は、乱れや不統一感も多少あるけど、基的にKent Beckや和田さんが使われているQAテストの定義によるもの(http://gihyo.jp/dev/serial/01/tdd/0003)。 この定義で「品質保証のための単体テスト

    TDD談義への反応に対する雑感(テスト駆動開発を取り巻く誤解等) - 千里霧中
  • TDD Boot Camp体験記 - Logic Dice

    12/19に開催されたTDD Boot Campに参加してきました。 一言でイベントを総めると、気で楽ませて頂きました。 また、前々から疑問に思っていることをレビュー中などに意見としてぶつけて、得る事ができたものがたくさんありますので、意見の整理と確認も兼ねまして、こちらにイベントの内容を綴らせて頂きます。 多くの方から意見を頂いたりしましたが、話の出所などを完全には覚えていないので、場合によってはさも自分の意見のように書かれているところがあると思います。特にTwitterのログに関しては大いに参考にさせて頂いています。その点に関しましてはあらかじめご了承下さい。 また、間違っている部分や気になる部分などがありましたら、意見をいただけると幸いです。 かなりの長文。注意。 まず前日から深夜バスを使って東京渋谷入り。その時間、バスがやや遅れたとしても6時。 最初の草書は24h営業のマクドで書

    TDD Boot Camp体験記 - Logic Dice
  • 和田卓人――TDD伝道師を生んだ読書会と「心の師匠」 - @IT自分戦略研究所

    あなたも@ITでコラムを書いてみないか 自分のスキル・キャリアの棚卸し、勉強会のレポート、 プロとしてのアドバイス……書くことは無限にある! コードもコラムも書けるエンジニアになりたい挑戦者からの応募、絶賛受付中 時代は、UMLが出始め、オブジェクト指向が全盛期を迎えたころ。大学生の和田氏はマーチン・ファウラー氏の著作『アナリシスパターン』に出合った。同時期、難解なことで有名なこの書籍を読もう、という読書会がオージス総研のWebサイト「オブジェクトの広場」で企画される。「参加してみよう」――これが、和田氏の読書会初体験となった。 2000年に開催されたこの「アナリシスパターン読書会」には、錚々(そうそう)たるメンバーが参加していた。『アナリシスパターン』の翻訳を担当した友野晶夫氏と児玉公信氏、オブジェクト指向開発の泰斗である藤野晃延氏や平澤章氏……。和田氏にとって、彼らは「雲の上の存在」だ

    basyura
    basyura 2009/09/23
     TDDはまったく逆のアプローチを取る。「たとえ最初は汚くてもいいから動くコードを書く、という小さな一歩を踏み出し、テストを動かしながらそのコードをすぐにきれいにする
  • [動画で解説]和田卓人の“テスト駆動開発”講座 記事一覧 | gihyo.jp

    第16回プログラミング言語とTDDは、どちらを先にマスターすべきか? 和田卓人 2007-12-21

    [動画で解説]和田卓人の“テスト駆動開発”講座 記事一覧 | gihyo.jp
    basyura
    basyura 2009/06/08
  • 「実演テスト駆動開発」 WEB+DB PRESS Vol.35特集 特設ページ:本誌からのお知らせ

    WEB+DB PRESS Vol.35の特集1「実演!テスト駆動開発」の特設ページです。テスト駆動開発(TDD)の実演ムービーや誌面サポート情報などを掲載しています。 更新履歴 2006年10月24日 実演ムービーの追加 タスク2「サーブレットのアクセスURLからDAOの名前を抽出する」の実演ムービー3を追加しました。 環境構築ムービーの追加 Subversion環境の構築ムービー3を追加しました。 補足情報の追加・変更 第2章~第8章の各章終了時点でのサンプルコードを公開しました。また,すでに公開済みだった第8章完全版のコードも差し替えましたので,お手数ですが再度ダウンロードしてください。 補足情報の追加 「テストフィルタ機能,受け入れテスト実行の自動化機能について」を追加しました。 補足情報の追加 「著者のEclipseテンプレートを公開!」を追加しました。 誌面訂正情報の掲載 第

    basyura
    basyura 2009/06/08
  • t-wada の日記(旧)

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

    t-wada の日記(旧)
    basyura
    basyura 2009/06/08
    TDD をまじめに勉強しようと思った。
  • 1