タグ

testとtddに関するshiumachiのブックマーク (13)

  • テスト駆動開発について僕は誤解していた - 偏見プログラマの語り!

    ここ数日 ruby をやってるんですけど、ruby といえばテストらしいので Test::Unit やら RSpec やらを調べてました。しかし僕はこれまでまともな TDD をやってこなかったので、先にテストとは何ぞや?TDD とは何ぞや?ってのを調べたりしていました。 この記事は、ずぶの TDD 素人がテストについて知り始めたまとめです。 1. きっかけは RSpec のドキュメント そもそも RSpec の↓紹介文の冒頭から意味不明に感じたんです。 FAQ:「RSpec って、要は Test::Unit でやっていることを別の書き方にしただけでは?」 この FAQ への短い答えはイエスです。 『スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)』 Rubyist Magazine えっ... じゃあ要らんやろソレ。いちいち手作業でチェック

    テスト駆動開発について僕は誤解していた - 偏見プログラマの語り!
    shiumachi
    shiumachi 2012/03/06
    hadoop コミュニティでパッチを書けば、こういう誤解は起こり得ないだろう
  • 「TDD」と「テスト戦略からテスト実装」はどのように関わるのか

    「テスト戦略からテスト実装」までをうまく理解していないながらもTDDとどのように関わっていくのがいいのか疑問だったところ皆さんからいろいろ意見もらえたのでまとめてみました。

    「TDD」と「テスト戦略からテスト実装」はどのように関わるのか
  • 拡張型TDD on JaSST2011Tokyo

    JaSST 2011 Tokyoでの「新しいTDDアプローチ TDDの新しい活かし方をライブで見せます!」に関連したつぶやきを集めています。 見落としや、関係ないものが混ざっていたらすみません。追加や修正していただけるとありがたいです。

    拡張型TDD on JaSST2011Tokyo
  • RSpec の入門とその一歩先へ - t-wada の日記(旧)

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

  • 20101218_TDDpbc

    TDD Boot Camp Introduction Pre TDD Boot Campへようこそ。この資料は、TDD Boot Campを安心して受講できるように TDD(テスト駆動開発)の雰囲気をハンズオン形式で学ぶ事を目的としています。このハンズオン を通してTDDを体験してみましょう。 それぞれのExerciseには目安となる所要時間が記述されています。ワークショップではこの時間 を目安に次のExerciseへと進み、約半日で最後まで終わるように計画されています。尚、各 Exerciseでは早く終了した人の為にOptionが用意されています。 ハンズオンに参加される方は、必要に応じてこの資料を印刷して持参してください(当日は印刷物 の提供はありません)。また、JDKとEclipseに関しては予めセットアップの上でご参加ください。 Overview このハンズオンで作成していくアプ

    shiumachi
    shiumachi 2010/12/16
    TDDをエクササイズ形式で実際に手を動かしながら学ぶことができる資料。Java。とてもわかりやすいし資料がきれいで見やすい
  • テスト駆動開発とかんばんは似ている、とケント・ベック氏

    コードを書くときにまずテストから書き始め、そのテストが通るようにコードを書くことで開発を進めていく「テスト駆動開発」。テストファーストとも呼ばれますが、この開発手法と、「かんばん」と呼ばれる、現場の進捗状況をかんばんによって見える化することで、開発プロセス全体の無駄をとり、価値の流れを作り出す手法には共通点が多い、というエントリ「TDD is Kanban for Code」をブログにポストしたのは、エクストリーム・プログラミング (XP) の考案者でアジャイルソフトウェア開発宣言の起草者の一人でもあるケント・ベック氏。 この2つにどのような共通点があるのでしょうか? かんばんとテスト駆動開発 「かんばんの目的は、開発プロセスの中で価値の流れを最大化することだ」とケント・ベック氏。簡単にまとめると、かんばんでは看板を使って各工程を見える化することで、下流工程から上流工程に要求が伝わり、仕掛

    テスト駆動開発とかんばんは似ている、とケント・ベック氏
  • JsUnitを使ってJavaScriptをTDDしてみる - プログラマ憧れプログラマ日記

    JavaScriptをユニットテスト XUnitの中のひとつとしてJsUnitがあります。 文字通りJavaScriptをユニットテストできるシロモノなのですが、JavaScriptのライブラリが台頭するこのご時世、自らも濃いJavaScriptを書く方も多いのではないでしょうか?実際どんな感じで書いていけるのかTDDと絡めてざっくりとまとめてみます。 テストケースの書き方 今回は引数が空であるかをチェックするisEmpty関数を実装してみることにします。 TDDに習ってまずはテストケースから書いてみましょう。JsUnitのテストケースはhtmlで書きます。例えばこんな感じ。 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html

    JsUnitを使ってJavaScriptをTDDしてみる - プログラマ憧れプログラマ日記
  • 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
  • TDDはテスタビリティの保証をしてくれるのかも - プログラマーの脳みそ

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

    TDDはテスタビリティの保証をしてくれるのかも - プログラマーの脳みそ
  • そろそろ大規模ソフトウェア開発に一言いっておくか。デイリービルドとリグレッションテスト 2010-03-12 - 未来のいつか/hyoshiokの日記

    会社の勉強会で自分の今までの経験からテストについてお話をした。その資料を公開する。自分が関わった、Oracle8、DEC Rdb、日COBOL、そしてSamba3.0国際化プロジェクトでのテストやディリービルドなどについて紹介した。 テストファースト開発など、最近広く知られるようになってきたが、ディリービルドとリグレッションテストの実行という方法論は昔からソフトウェア製品開発の現場では行われていたベストプラクティスである。そのリズムとか雰囲気を伝えたかった。 テスト勉強会よしおか100311 1View more presentations from Hiro Yoshioka. テストがある開発現場ってのは、こんな感じなんだ〜という雰囲気が伝われば幸いだ。 アジャイル開発方法論としてXPの手法とかいろいろ知られているが、このディリービルドとリグレッションテストというプラクティスもその

    そろそろ大規模ソフトウェア開発に一言いっておくか。デイリービルドとリグレッションテスト 2010-03-12 - 未来のいつか/hyoshiokの日記
  • Google App Engineでテスト駆動開発を行うための3つのTips | TRIVIAL TECHNOLOGIES 4 @ats のイクメン日記

    Google App Engineの開発ではPythonを使います。GAEを使ったWebアプリの開発でテスト駆動開発を行う際にも,Python的なユニットテストの文脈を活用できます。 ただし,GAEでユニットテストを行うためにはいくつかのツールやトリックが必要です。ここでは,そのテクニックを簡単に紹介します。 その1 : NoseGAEを使う Pythonのテスト用ツールにNoseがあります。このツールは,複数のディレクトリを渡り歩いて,複数のテストコードを一気に実行してくれる便利なツールです。 NoseのプラグインNoseGAEをインストールすることで,GAEアプリのテストを楽に行うことができます。「nose --with-gae」というようにオプション指定をすることでNoseGAEを利用できます。NoseGAEでは,テストコード上でGAEのモジュールやパッケージをインポートするために必

  • テスト駆動開発とPDCAサイクル - 開発者がテスト駆動開発をすると、生産性が上がる理由

    テスト駆動開発とPDCAサイクル - 開発者がテスト駆動開発をすると、生産性が上がる理由 目次 PDCAサイクルとは? 図1)PDCAサイクル 参考 しかし、PDCAサイクルは品質改善の手法なのでは? テスト駆動開発とPDCAサイクルに、何の関係があるの? 図2)テスト駆動開発の持つサイクル テスト駆動開発の実際 当に必要となるまでコードを書かない テストを先に書く 図3)テスト駆動開発の実際の流れ タイプ別 - テストファーストの説明 テスト結果に失敗があるときには、まず、そのエラーを修正する バグ報告があったときには、バグをテストコード化する 何故テストに失敗したのかを知り、そこから学ぶ 自動テストを用意したら、リファクタリングせよ! 参考 まとめ 書いた人 関連ページ コメント 開発者がテスト駆動開発をすると、生産性が上がる理由 PDCAサイクルとは? PDCAサイクルとは業種に関

  • [動画で解説]和田卓人の“テスト駆動開発”講座 記事一覧 | gihyo.jp

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

    [動画で解説]和田卓人の“テスト駆動開発”講座 記事一覧 | gihyo.jp
  • 1