※2011/11/08 コメント欄で指摘を頂いた箇所を加筆修正しました。また、割と古い記事ですので最新の情報は Fabrication を参照することをお奨めします。 これを作ってるとき、machinistとmachinist_mongoを使っていたんですが、試しに前々から気になっていたFabricationで書き換えてみました。README書いてあることをいくつか実際にやってみたのでメモしておきます。割と使いやすかったです。 何に使えるの 下記をサポートしてるそうですので、Mongoid使えます。やった! Plain old Ruby objects ActiveRecord objects Mongoid Documents 使ったもの Fabrication…本日のメイン Faker…嘘データをどんどこ作ってくれるやつ QuickStart & 使い方 Gemfile Rails/M
JB:この件について一般化するのは嫌なので、私がTDD/BDD使うときとその理由を説明させてください。 私が初めてTDDに出会ったのはミス(欠陥といってもバグといってもいいでしょう)を防ぐ方法を求めていたからです。プログラム上の多くのミスのおかげで私は完璧さの感覚を失ってしまいました。どんなことを成し遂げても仕事が完璧に近づいたと感じたことはありませんでした。そして、書いたコードをテストすれば、ばかげた小さなミスを見つけ修正できるのではないかと考えました。テストをしてミスを見つけたかったのは、愚かにみられるのを防ぐためというより、仕事に対する完璧さの感覚を失わないようにするためです。実際テストは役に立ちました。数年経って、TDDはコーディングのミスを防ぐのに役に立つだけでなく、デザインの失敗を防ぐのにも役に立つことに気づきました。そしてBDDを学び、どのような機能を実装するかについての失敗
BDDについて自分なりにまとめてみた Published on 2011-07-02 Updated on 2011-07-02 BDDという言葉も割と人によって指すものが違うようなので「俺の中でのBDDはこうだよ」って内容のエントリ。別に絶対的なものでもないと思うので参考までに 結論から とりあえず結論だけ知りたい人向けに。 BDDにはふたつの種類がある TDDの言い換えのBDD(開発寄り) ATDD(受け入れテスト)でのBDD(ユーザ寄り) 振る舞い BDDは振る舞い駆動開発と言われたりするように、テストという言葉のかわりに振る舞いという言葉を使う。日本語的には仕様と言うほうがわかりやすいかもしれない。多分、BDDのイメージが掴みにくいのはこの振る舞いという言葉にあると思う。と言うのも振る舞いと言うのは、人の立場よって変わるからだ。例えば、プログラマがあるクラスを実装している時に言う振
Objective-CでTDDってどうやるんだっけ?ってなったのでTwitterからPublic Timelineを取得するって流れを簡単にやってみた。 TwitterのAPI利用はTweetingを参考にした。 # ということでiOS5で。 前提 public timelineを取得するだけ 簡単なテストをしたいので Xcode4.2を使う TwitterやARCなどiOS5の機能を使うので public timelineを取得するためのインタフェースを考える TTTwitterというクラスにする sendPublicTimelineToDelegate:withSelector:というメソッドを使うとパラメータで渡したdelegateのselectorに結果のtimelineを渡してくれる 結果の形式はstatusとbodyというkeyをもつdictionary statusにはHTT
はじめに 本連載では、「透明性」というキーワードで、アジャイル開発について説明しています。前回は、テスト駆動開発(TDD)の持つ、開発を促進する設計作業としての側面にスポットを当てて説明しました。今回は、それらの考えを展開させてみたいと思います。具体的には、振る舞い駆動開発(BDD)と受け入れテスト駆動開発(ATDD)という二つのトピックを、ご紹介します。 テストのレビュー 前回、テスト駆動開発におけるテストを、設計作業であるとする考え方をご紹介してきました。これは、個々のクラスのインターフェース(=振る舞い)を、テストにより明確にしてゆくというものです。結果的に、作られたテストは、実装との乖離を自動的に検出できる設計書となります。 仕様変更やリファクタリングに伴うソフトウェアの改変に際して、バグの混入を自動的に検知できるので、実装と設計の同期が取れるという大きなメリットがあります。 し
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く