タグ

BDDに関するkimukou_26のブックマーク (7)

  • BDDについて自分なりにまとめてみた - UKSTUDIO

    BDDについて自分なりにまとめてみた Published on 2011-07-02 Updated on 2011-07-02 BDDという言葉も割と人によって指すものが違うようなので「俺の中でのBDDはこうだよ」って内容のエントリ。別に絶対的なものでもないと思うので参考までに 結論から とりあえず結論だけ知りたい人向けに。 BDDにはふたつの種類がある TDDの言い換えのBDD(開発寄り) ATDD(受け入れテスト)でのBDD(ユーザ寄り) 振る舞い BDDは振る舞い駆動開発と言われたりするように、テストという言葉のかわりに振る舞いという言葉を使う。日語的には仕様と言うほうがわかりやすいかもしれない。多分、BDDのイメージが掴みにくいのはこの振る舞いという言葉にあると思う。と言うのも振る舞いと言うのは、人の立場よって変わるからだ。例えば、プログラマがあるクラスを実装している時に言う振

  • わがままなプログラマにならない為の10のルール

    「エゴレスプログラミング」という言葉があります。アメリカのコンピューター科学者、ジェラルド・ワインバーグ氏によって『プログラミングの心理学』にて取り上げられた思想です。プログラマ同士が協調する事で最終的なコードの品質が向上するという思想です。プログラマが協調できていないムードだとコードの品質が下がると言い換えてもなんだか思い当たるフシのある感じです。1970年代からある考え方ですが、ちょうど話題になっていました。さてそのエゴレスプログラミングの為の十戒は下記のようになっています。 自分が失敗をする事を認める コードは自分自身ではない どれだけ空手を知っているかは重要ではない。他にもっと知っている人がいる 相談なしにコードを書き換えない 自分よりも知識が無い人に対して尊敬と敬意と忍耐を持って接する 唯一不変な事は、世界は変わるという事 権威は立場からではなく知識から生まれる 自分が信じるもの

    わがままなプログラマにならない為の10のルール
  • Maven での BDD - Specs, Specs2, RSpec, Easyb, spock - なんとなくな Developer のメモ

    Maven3 を使ったプロジェクトでの BDD(振舞駆動開発)の実施方法をまとめてみました。 今回試した BDD ツールは以下の通りです。 Specs Specs2 RSpec Easyb(Maven2) spock 結果として、この中では Specs/Specs2 か spock あたりを使うのが良さそうです。(RSpec と Easyb は問題あり) なお、実行環境は以下の通りです。 Java SE 6 Update 24 Maven 3.0.3(Easyb のみ Maven 2.2.1) サンプルのソースは http://github.com/fits/try_samples/tree/master/blog/20110321/ Specs の場合 Scala による BDD ツールの Specs を使用する場合、pom.xml を以下のように設定します。 なお、surefire プ

    Maven での BDD - Specs, Specs2, RSpec, Easyb, spock - なんとなくな Developer のメモ
  • 【ハウツー】Javaのビヘイビア駆動開発をやさしく現する"easyb"を試す (1) ビヘイビア駆動開発、そしてeasybとは? | エンタープライズ | マイコミジャーナル

    稿では、Java向けのビヘイビア駆動開発(Behavior Driven Development: BDD)フレームワークであるeasybを簡単に紹介する。 「ビヘイビア駆動開発」という用語になじみのない方のために簡単に説明すると、「ソフトウェアを書く前に、その仕様をコードで書く」という開発手法である。対して、皆さんおなじみの「テスト駆動開発(TDD)」は、「ソフトウェアを書く前に、そのテストをコードで書く」という開発手法だ。 この2つの開発手法は、「プログラムを書く前に、そのプログラムが正しく動くことを保証するためのコードを書く」という点ではまったく一緒だ。保証するためのコードもかなり似通ったものになる。ただし、TDDのコンセプトは「テスト対象のものがないのにテストを書く」というもので、あまり直観的とは言えない。対してBDDは、「仕様通りに動くことを保証するために、検証コードを先に書く

  • NUnitでBDD - サピア・ウォーフの仮説は当てはまらないが。(-.-) - NAgilerの日記

    TDDをはじめて間もない頃に、ボトムアップで設計しているうちは良いのだが、トップダウンで設計しようとしたりクラスをまたがったテストを書こうとした矢先にどのようにテストすればよいかが分からなくなって立ち往生した経験はないだろうか。 これは実装クラスとテストクラスの関係が1対1であることに慣れすぎてしまっていることが原因だ。テストとして考えずにビヘイビアの側面として捉えるような視点に移行してみればおのずと状況は変わってくる。 私は最近、NUnitでBDD的なテスト(ビヘイビアと呼びたいところだが、サピア・ウォーフの仮説が当てはまらないNUnitではテストという呼び方に甘んじておこう)を書く試みを行っている。以下にその命名規則を示そう。これらは全て日語で名前付けを行う。 テストアセンブリ → ソリューション名.Behaviours 名前空間 → [ソリューション名.Behaviours].スト

    NUnitでBDD - サピア・ウォーフの仮説は当てはまらないが。(-.-) - NAgilerの日記
  • SpecFlow を使ってみた(Visual Studio で BDD w/ MSTest)

    SpecFlow を使って BDD するまでのお話し。 今回は、VisualStudio 2010 で MSTest (VisualStudio についているもの)を使って BDD するまでの話です。 NUnit は、また今度。 手順 1. SpecFlow をインストールします。 http://specflow.org/ の download に msi ファイルがあるので、ダウンロードします。 手順 2. BDD したいプロジェクトにテストプロジェクトを追加します。 MSTest を使うので、テストプロジェクト! 手順 3. テストプロジェクトに app.config を追加する。 app.config とは Application Configuration File ね。念のため。 手順 4. 手順 3 で追加した app.config に下記記述を追加する。 手順 5. Spec

  • PHPでBDD(Behavior Driven Development)する方法

    みなさんこんにちは。@ryuzeeです。 RubyであればRSpecやCucumberとか使って、むしろBDDしているケースの方が多いようですが、PHPでやっている事例はあまり聞きません。 とりあえずPHPでもBDDできることは確認できたので、その方法をご紹介します。 ※実戦投入にはもうちょっと検証は必要かもしれません。 BDDとは?BDDとはビヘイビア駆動開発(Behavior Driven Development)でテスト駆動開発から派生したものです。 テスト駆動開発とドメイン駆動設計を統合したようなイメージになります。 対象における「振る舞い」や「制約条件」の検証のために、自然言語的な記述でテストコードを記述します。 スペックファーストで仕様を作ってから実装するという流れになります(コードを書く前に振る舞いを決める)。 ということで、以下ではPHPでBDDを行う方法について解説してい

    PHPでBDD(Behavior Driven Development)する方法
  • 1