2013-08-09 11 views
27

私は、フロントエンドで単体テストを行うために2つのライブラリを探してきました。QUnit対ジャスミンとTDD対BDD

  • QUnitからhttp://qunitjs.com/

  • ジャスミンからhttp://jasmine.github.io/

    1. 私はDを見ることができましたが、ジャスミンは明らかに、よりBDD QUnitより集中です行動指向の方法でテストを記述することにより、BDDをQUnitに変更することができます。どちらもコード単位でアサーションを実行できるので、両方とも単体テストだと思います。 BDDはTDDと相互に排他的ですか、それともどのように記述するのですか?

    2. 行動テストを行う場合は、ユニットテストが必要ですか?すべてのユーザストーリーをカバーしているように見えますが、テスト可能なユニットの詳細を実際に知る必要はありません。

    3. あなたが好きなのテストフレームワークはありますか?デベロッパーがフロントエンドで行うのに適した単体テスト以外のテストはありますか?

+0

BDDは、本質的に、TDD方法論を記述するフレンドリーな方法です。 –

+7

最初の質問と2番目の質問が、主観的なQ&Aと思われるものをより客観的なものに変えてくれていることを感謝します。 – N13

+0

http://pivotal.github.io/jasmine/ページが見つかりません –

答えて

18
  1. BDDとTDDは相互に排他的ではありません。 Liz Keogh's post

  2. 行動テストはビジネス関係者が理解できるようにする必要があります。単体テストは、通常、技術チームメンバー(開発者、テスターなど)が理解できるように意図されています。単体テストをより読みやすくする方法の例については、GOOSの本を見てください(ただし、例はJavascriptではありません)。

    また、BDDを使用してすべてのテストパスをカバーしようとすると、ビジネス担当者は退屈して世話をしなくなります。

  3. Cucumber-JS(ポート番号Cucumber)をご覧ください。

+17

BDDテストを実際に読んでいるビジネス関係者の割合を示す調査が必要です。私はそれが一桁であると確信しています。 –

+3

あなたは正しいかもしれませんが、理解できない人は確かに読まないでしょう。英国政府の公的ウェブサイトの再開発に関するオンラインBDDテストをご覧ください。https://www.relishapp.com/GDS/whitehall/docs –

-1

DOM相互作用を含むテストを書く場合は、pageboy.jsをご覧ください。これは、テストコードをより読みやすくするための、Javascript DOMインタラクション(RubyのCucumberで使用されているCapybaraのようなビット)のドメイン固有言語(DSL)を提供する新しいプロジェクトです。

このDSLの背景には多くのものがありますhere

+3

免責事項(プロジェクトへの関与)はいいと思います。 –

+0

最後のコミット3年前 –

関連する問題