タグ

tddとTDDに関するryuzeeのブックマーク (22)

  • テスト駆動開発のすすめ - Perl日誌

    hachiojipmに行ってきたのですが#4でも#5でもTestを書くのが難しいという声が聞こえたので「テストは書いてみると簡単」「テストがあると開発が楽」という事を伝えてみようと努力する試みです。 ということでサンプルコードを書いてみました。 https://github.com/okamuuu/Sample-Plack-Test 紹介するサンプルコードについて ここで紹介しているスクリプトはある男がBlogを作ろうと思ったがどうせたいしたことしないので俺俺WaFをつくってやろうとして実際にやったテスト駆動開発です。 おもむろにt/web.tとかつくってみる 最初にテストを書いてみましょう。 #!/usr/bin/env perl use strict; use warnings; use Test::Most; use Plack::Test; use HTTP::Request::C

    テスト駆動開発のすすめ - Perl日誌
    ryuzee
    ryuzee 2011/06/02
    分かりやすい!
  • TDD Boot Camp 札幌 1.5 終了しました - やさしいデスマーチ

    日、TDD Boot Camp札幌 1.5を開催いたしました。 TDD Boot CampはTDD(テスト駆動開発)を実践形式で学ぶ体験型のイベントで、id:t-wadaさんの主導の元、全国各地で開催されています。札幌でも1月に行われ、盛況の中で終了しましたが、折角TDDの熱が高まった気運を下げてはいけないと、今回の開催に至ったわけです。今回は、ゲストはいませんので、自分の方からTDDについて講義を行い、午後からは共通のお題に4人1チームで取り組んでみました。 参加者は定員の16名です。前半のセッションは特にプログラミング言語には依存しない話でしたが、午後のお題に関しては、自分のスキル的な問題もあり、Javaに限定して行いました。 午前中はTDDに関するセッションです。内容としては開発プロセスにおけるユニットテストの位置付け、ユニットテストにおける型(パターン)、テスト駆動開発とはどんな

    TDD Boot Camp 札幌 1.5 終了しました - やさしいデスマーチ
    ryuzee
    ryuzee 2011/05/16
    札幌素晴らしい!
  • Google App EngineとPythonでの素直な開発環境の構築(TDDができるように) - Masatomo Nakano Blog

    追記: 続編的なものを書いた。 今年は色々なことに手を出してみよう、ってことで少し前からGoogle App Engine(以下GAE)で、あるモノを作っている。モノ自体は近いうちに公表できると思う。 基的に、Pythonと標準っぽいフレームワークだけでやってみている。作っているものがそれなりにシンプルなのと(だからこそGAE!)、GAEでそれなりの規模の開発をするのが自分自身初めてということもあり、あまり色々なレイヤーを重ねて手こずりたくなかった、ってのがその理由。 ただ、GAE初心者なので、「いやいやそれは今時ないよ」「XXの方が100倍いい」とかあったら教えてくれると嬉しいので今のところの環境を書いておくことにした。今ならスイッチ可能。 今作っているものがJSONファイルを入出力するだけのものなので、HTML生成パートみたいのはない。 1. フレームワーク 上にも書いたように、今回

  • Mockitoノススメ テストスタイルの変化 - Fly me to the Luna

    Mockitoを使うようになってから、僕はテストコードへの取り組みが変わりました。Mockitoを使うまで僕がUnit Testと思っていたものは、厳密にはUnit Testじゃないんじゃないか、と思うようになりました。なぜかというと、実装コードを書いていくと、たくさんのクラスと関連していきます。だんだんと、そのクラス、Unitをテストするのではなく、そのAPIの裏にあるクラスの状態、振る舞いも予測しなければならなくなっていきます。例えば永続化層にアクセスするクラスを開発しているのであれば、どんなに上層にあるレイヤーのクラスでも、テストデータをDBに入れないといけない、というのは、よくよく考えてみると、変な話なのです。どこかの段階で、DBを操作するクラスを参照しなくなるはずですから。大体、リズムが悪いですよね。DBの初期化用のテストデータ用意するのは大変です。 Unit Testでは、テス

    Mockitoノススメ テストスタイルの変化 - Fly me to the Luna
  • Agile2.0 ~ 世界はただゆっくりとその形を変えてゆく

    yoshiori氏のデブサミ再演(2010/3/16) 逝けなかったので自分用に纏めてみました。 編集&装飾よろしくです #agile20

    Agile2.0 ~ 世界はただゆっくりとその形を変えてゆく
  • TDD Boot Camp 北陸に登壇させていただきました - t-wada の日記(旧)

    3/13, 3/14 の2日間北陸で開催された「TDD Boot Camp 北陸」に登壇させていただきました。 参加下さった皆様、企画を立ち上げた id:katzchang さん、ありがとうございました。 今回の TDD Boot Camp (略して TDDBC) は、二部構成になっており、第二部は泊まりこみで行うという意欲的な企画でした。金沢の白山里*1に集まり、開発について、 TDD について、いろいろ体験していただきました。 一日目は午前中は私の講演、午後は各言語に分かれてペアプロで TDD、その後コードレビューというセットを 2 セット行うという、東京で行われた TDDBC と同じような構成で行いました。ここまでが TDDBC 北陸第一部。そのあとから第二部で、夜は楽しくお酒を飲みつつ、自由に議論したりハッカソン風のことをしたりしました。午前の講演資料は別マシンに入っているので後ほ

    TDD Boot Camp 北陸に登壇させていただきました - t-wada の日記(旧)
    ryuzee
    ryuzee 2010/03/16
  • TDDはテスタビリティの保証をしてくれるのかも - プログラマーの脳みそ

    TDD Boot Camp 北陸行ってきました。 TDDはテストドリブンデベロップメントの略で、自働テストを書いてから実装を書くというスタイル。ここでよく誤解されるのだけど、業務でおなじみ単体テストや結合テストといった網羅的なテストを記述してから実装を書くわけではない。目の前の1歩分、ひとつだけテストを書き、すぐさま実装を書いて自働テストをグリーンにする、というやり方をするのだ。こればかりは実際にやってみないと誤解は解けないかもしれない。 さて、深夜のテストTL - Togetterや、TDDはテスト手法か否か - Togetterで議論されている「TDDは品質保証の手法ではない」という部分に関する議論。ここでいう「品質保証」はバグがないこと、ソフトウェア品質の12の属性でいう信頼性(reliability)が高いことを指す。 TDDのスタイルには網羅的な検査をしてバグをあぶりだすようなフ

    TDDはテスタビリティの保証をしてくれるのかも - プログラマーの脳みそ
    ryuzee
    ryuzee 2010/03/16
  • 「あなたがTDDやユニットテストについて課題に感じていることがあれば、教えてください。」 - @katzchang.contexts

    参加者アンケートより。 想定バグ検出件数とか、昔からなぜかある指標を打ち倒すこと やろうと思ってもなかなかできない・・・ モックのライブラリー等を使ったテストケースの書き方。すべてのテストケースの実行時間の短縮 知識のみで実際の経験がないこと。テストを書くのが難しいためテストケースを書けない場合がある。 テストを先に書く文化がなかなか根付かない→テストできないコーディングをしているorz 社内が従来のやり方に固執している為、新しい手法が試せない。 テストドリブンな手法を開発以外の分野にも適用してみたい。 マルチスレッド関連のテスト方法が分からない。 BDDなど、他のテスト技法(?)との使い分けが分からない。BDDはTDDの一部? 他のクラスが必要で、テスト対象クラスのインスタンス化ができないやつとか、データベース使うやつのテストコードの書き方が分からないので、勉強が必要だと思う。 開発時点

    「あなたがTDDやユニットテストについて課題に感じていることがあれば、教えてください。」 - @katzchang.contexts
    ryuzee
    ryuzee 2010/03/13
  • テスト駆動開発の効果はどのくらいある?

    ソフトウェアの開発を行うときに、まずテストケースを先に作ってから機能を作り込む「テスト駆動開発」(Test-Driven Development:TDD)。これにより、ソフトウェアの開発工数や品質にはどの程度の変化があるのでしょうか。 TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社:森崎修司の「どうやってはかるの?」:ITmedia オルタナティブ・ブログ この疑問について調査した論文を、奈良先端科学技術大学院大学 助教の森崎修司氏が3月10日のブログ「国立大学法人奈良先端科学技術大学院大学 助教」のエントリ「TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社」で紹介しています。 開発時間はやや増えたがコードの品質は上がった 論文全文は有料なので読めないものの、森崎氏のブログによると次の知見が得られたとのことです。まず、ソフトウェ

    テスト駆動開発の効果はどのくらいある?
    ryuzee
    ryuzee 2010/03/13
  • プログラミング初等教育とTDDの相性は最高

    1年半ほど前、入社前はプログラミング経験ゼロの@chibisayoを新入社員としてチームに迎え、私がOJT担当っぽくなった時の経験から、プログラミング初等教育とTDDの相性は最高であることをきちんと文章に残しておきたかったので、このビックウェーブに乗ることにしました。

    ryuzee
    ryuzee 2010/03/03
    昨日研修講師でTDD教えて来た。まさにこういう話
  • TDDを行うとソフトウェアの信頼度が上がる理由 - babie, you're my home

    「TDDはテスト手法か否か」の議論で、いまいち私の考えが伝えきれてないようでした(link1, link2)ので、表題にあることを通じて、私のTDDに対する理解の説明を試みます。 用語説明 題に入る前にこれから使う用語を説明しておきます。 科学的方法には、伝統的な方法としてベーコン由来の実証主義、割と最近のポパー由来の反証主義があります。それぞれ批判はあるのですが、2大潮流といって差し支えないと思います(私は科学哲学については勉強中であり近年の研究はフォローしてないこと、また、観点が反証主義よりなことを、お断りしておきます)。 ここでは、 実証主義……実証の積み重ねから信頼度の高い理論が導けるとする態度 反証主義……様々な反証テストに耐えた理論が信頼度が高いとみなす態度 とします。 先の用語に出てきた、実証、反証とは、 実証……ある理論を経験や実験から真であると証明すること 反証……ある

    TDDを行うとソフトウェアの信頼度が上がる理由 - babie, you're my home
    ryuzee
    ryuzee 2010/03/02
  • 全ては時の中に… : 【VB.NET】NUnitを利用した単体テストの実施方法について

    2007/12/40:6 【VB.NET】NUnitを利用した単体テストの実施方法について .NET用の単体テスト用フレームワークにNUnitがある。 これを利用すると、テストコードを利用した単体テストが容易に行えるようになる。 NUnitは、NUnit.orgからダウンロードできる。 インストール手順は、以下の通りである。 【インストール手順】 1.上記のサイトにアクセスする。 2.Webサイトの上部にある「DOWNLOAD」をクリックする。 3.NUnitをダウンロードする。 →NUnit、.NET Frameworkのバージョン別にファイルが用意されている。 ※「NUnit-2.4.3-net-x.x.msi」をダウンロードすると、インストールが簡単にできる。 4.ダウンロードしたファイルをインストールする。 これで、NUnitを利用するための準備は整った。 NUnitを利用した単体

  • 最近の TDD 議論についてちゃんと僕の気持ちを書いてみる - 宇宙行きたい

    最初に ちょっと最近,ドタバタしてて twitter だと腰を据えて話せないなと感じたので,ちょっと最近のTDD 議論についてちゃんと僕の気持ちを書いてみようと思います. これは僕が"今"感じてる事とか考えている事を書いているだけですので,誰かを論破したいとか,誰かを説得したいという意思は無いです. 当に裏とかはなく,純粋に「"庄司嘉織"という人間は"今この時"にこういう事を感じてこういう事を考えた」というだけです. もちろん明日には考えが変わるかもしれないし,逆に過去の発言とは違うかもしれませんが,「最近はこう感じている」という事をちゃんと書いておこうと思いました. デブサミでの発表について id:babie さんにちゃんと返事をしていなかったので,まずちゃんと返事をしておこうと思います.(遅くなってしまってすいません) @kakutani は興味なくても、あのスライドだと @yosh

    最近の TDD 議論についてちゃんと僕の気持ちを書いてみる - 宇宙行きたい
  • TDD談義への反応に対する雑感(テスト駆動開発を取り巻く誤解等) - 千里霧中

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

    TDD談義への反応に対する雑感(テスト駆動開発を取り巻く誤解等) - 千里霧中
    ryuzee
    ryuzee 2010/02/24
    その中でTDDは割に合うように実装手法として最適化していった結果生まれた具体的な手法である
  • NUnit 2.5 の導入 Step by Step - TDD.NET

    ※ 初出: biac の それさえもおそらくは幸せな日々@nifty 「NUnit 2.5 がリリースされているので、 Windows 7 RC に入れてみた。」 ( 2009/05/25 ) ( 一部修正 ) ※ NUnit V2 系の最新バージョンの配布サイトはこちらです。 ⇒ NUnit V2 Test Framework in Launchpad NUnit リリース版の 2.5.0.9122 をインストールしてみます。 OS は Windows 7 RC を使いましたが、 それ以前の Windows でも同様です。 ダウンロードしてきた NUnit-2.5.0.9122.msi を右クリックして 「インストール」 を指示すると、 インストーラが立ち上がります。 ※ より新しいバージョンが出ていますので、 そちらをインストールされることをお勧めします。 ただし、 以下の説明と異なる

    NUnit 2.5 の導入 Step by Step - TDD.NET
    ryuzee
    ryuzee 2010/02/24
  • C# 2008 Express + NUnit 2.5 で、 初めてのテストファースト Step by Step - TDD.NET

    C# 2008 Express + NUnit 2.5 で、 初めてのテストファースト Step by Step ※ 初出: biac の それさえもおそらくは幸せな日々@nifty 「NUnit の "Hello, world!" ~ C# 2008 Express + NUnit 2.5 で、 テストファーストの Step by Step」 ( 2009/05/27 ) NUnit をインストールして動作確認までできた ので、 次は、 NUnit を使ってテストファーストでプログラムを作る方法についてです。 開発環境としては、 Visual Studio 2008 Express Edition SP1 の C# を使います。 なお、 Visual Studio 2008 の Pro. 版以上には、 MS 独自の単体テスト機能がありますが、 基的な考え方は NUnit を使う場合と変

    C# 2008 Express + NUnit 2.5 で、 初めてのテストファースト Step by Step - TDD.NET
    ryuzee
    ryuzee 2010/02/24
  • TDDはテスト手法か否か

    なんもわからん @babie TDDは論理実証主義的な面が強調されすぎたために、BDDなどという言い換えが行われた。反証主義的に、エラーを積極的に起こそうとするテストを書くべき。 2010-02-21 13:45:09

    TDDはテスト手法か否か
  • 19-B-3 三周遅れのXP -僕とドワンゴのXP-/庄司嘉織 - tmtms のメモ

    素晴らしいプレゼンでした。見た目としゃべりとのギャップがいい感じです。 角谷さんのもそうですけど、良いプレゼンは文章や資料では再現できないので、来れなかった人のためにせめて動画が見れればいいんですが、デブサミは撮影禁止なのが残念なところです。 ドワンゴはちゃんとしっかりアジャイルしているのが凄いです。 以下適当なメモ。嘘かいてあるかもしれません。 http://yoshiori.org タイトルの説明 3周遅れ ネガティブじゃない 1周目 ケントベック 2周目 角谷さん 3周目 1.方向を示し 2.道を通す人 3周目→実は2周遅れ。間違いでした 車輪の再発明をしない 開発プロセスについても車輪の再発明をしない さらに先に進める 原点にあたらないとダメ→そんな奴は老害 やらないといけないことは高速道路の設置 うちらの業界はブログ書いたりtwitterで発言してる→高速道路を設置してる XP

    19-B-3 三周遅れのXP -僕とドワンゴのXP-/庄司嘉織 - tmtms のメモ
    ryuzee
    ryuzee 2010/02/21
  • [動画で解説]和田卓人の“テスト駆動開発”講座 記事一覧 | gihyo.jp

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

    [動画で解説]和田卓人の“テスト駆動開発”講座 記事一覧 | gihyo.jp
  • 和田卓人――TDD伝道師を生んだ読書会と「心の師匠」 - @IT自分戦略研究所

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