質問

BDDに関する小さな記事を書いたところ、人々から質問がありましたBDD(特にNBehave)の大規模な使用のケースがあるかどうかを尋ねます。

では、私の質問はコミュニティに行きます。BDDを正常に使用したプロジェクトはありますか?もしそうなら、どのような利益を得ましたか?もう一度BDDをやりますか?他の人に勧めますか?

役に立ちましたか?

解決

さまざまなシナリオ(オープンソースプロジェクトとNDプロジェクト)のコードレベルでBDDを使用しました。

  1. MVCシナリオのビューの説明、ユーザーからどのような入力を受け入れるか(。NETのDDDおよびルール駆動型UI検証

    result = view.GetData(
      CustomerIs.Valid, 
      CustomerIs.From(AddressIs.Valid, AddressIs.In(Country.Russia)));
    
  2. 例外処理の動作についてサービス層に説明する( ActionPolicy がデコレータに挿入されます):

    var policy = ActionPolicy
      .Handle<WebException>()
      .Retry(3);
    

これらのアプローチを使用すると、コードの重複が大幅に減少し、コードベースの安定性と柔軟性が向上しました。さらに、複雑な詳細の論理的なカプセル化により、すべてがよりシンプルになりました。

他のヒント

私はWebサイトでBDDを使用する小さなチームに所属していました。

使用方法は基本的にTDDでしたが、テストはDSLを使用した動作として単純に記述されています。ビヘイビアの大規模な先行設計は行いませんでしたが、多数のビヘイビアを作成し、テストとまったく同じように使用しました。

ご想像のとおり、TDDのように機能し、一般的には良好でした。テストをビヘイビアーとして振る舞うことは、顧客とやり取りする際に素晴らしいものであり、かなりまともなドキュメントを作成しましたが、ビヘイビアーが英語で書かれており、テストがプログラミングされていない難しい中間言語を考え出す代わりにプログラムされたことを望みますどちらの目的にも完全に適合します。

それはまだBDDであり、言語をrandom_looking.set of_Punctuationでなくsimple.spacesで区切られた言語に変換しようとするこのかわいいトリックがなければ、それは私の不機嫌そうな古いプログラマーの態度でした。 100%満足しています。

このサイトは利用可能で完全に機能しているため、成功と呼びます。ご覧ください

最近、高度な要件ドキュメントでGWTのBDDスタイルを使用しました。私は、上司が非常に明確で理解しやすいと言った上司が言った顧客購入からGWTについてのフィードバックを得ませんでした。彼は私が知っているBDDの知識を持っていないことに注意してください。これは、おそらく伝統的な滝の背景を持つ人々にとっては少し風通しの悪い妖精だったので、ユーザーストーリーを入れませんでした。次回はユーザーストーリーを入力してみます。

ところで、これは目玉UIプロジェクトではありませんでした。これは、Webサービスからデータベースにデータを同期する統合プロジェクトでした。したがって、GWTは<!> quot; eye ball <!> quot以外でも機能することを示しています。 UI。

いくつかのプロジェクト(MSpecを使用)でContext-Specificationスタイルを使用して、非常に成功しています。シナリオスタイルの本当の利点を理解しようとしています。コンテキスト仕様のスタイルを使用すればするほど、それが好きになり、アプリケーションがきつくなります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top