web-dev-qa-db-ja.com

node.jsのBDDとTDD?

Node.jsでのBDDおよびTDDには何が使用されますか?

私はCucumber + RSpecを使用するのに慣れています。 node.jsの優れたコンボは何ですか?

ありがとう

69
donald

更新

モカ すぐに投票できます!


Node.jsモジュールページから testing modulesセクション を見ることができます。たとえば、 Vows は非常に人気のあるBDDフレームワークです。

VowsはNode.jsの動作駆動型開発フレームワークです。

59
Alfred

チェックアウト mocha - (github)

また、 mocha-cakes 、mochaでのCucumber構文の試み。

18
Quang Van

Rspecに慣れている場合、 Jasmine はかなりいいです。 Node.jsでは使用していませんが、バックボーンアプリのテストに使用しています。構文はrspecに非常に似ています。上記のサイトから取られた:

describe("Jasmine", function() {
  it("makes testing JavaScript awesome!", function() {
    expect(yourCode).toBeLotsBetter();
  });
});

上記のAlfredが提供するリンクにリストされていますが、人々がVowsを例としてリストしたので、特にrspecと構文的に似ているので、Jasmineにバンプを与えると思いました;)

15
Craig Monson

Node http://vowsjs.org にBDDの 'Vows'プロジェクトがあります。見た目はとてもいいです。RSpec/ Cucumberとは少し異なりますが、とても楽しい

9
Nikolay

少し後かもしれませんが、探しているのはKyuriです: https://github.com/nodejitsu/kyuri

「kyuriは、いくつかの追加の非同期キーワードを含むnode.js Cucumber実装です。160以上の言語をサポートし、VowsJSスタブにエクスポートします」

また、nodejitsuは、プロジェクトのKyuriの機能仕様を共同で管理するためのWebアプリを作成したようです。これは「prenup」という名前で、見てみましょう。

3
Benja

yadda を試すこともできます。 mocha、jasmine、casper、webdriverなどの他のテストライブラリにプラグインしますが、in situでテストに注釈を付けるだけでなく、適切な機能ファイルを作成することもできます。典型的なテストは次のようになります...

var Yadda = require('yadda');
Yadda.plugins.mocha();

feature('./features/bottles.feature', function(feature) {

   var library = require('./bottles-library');
   var yadda = new Yadda.Yadda(library);

   scenarios(feature.scenarios, function(scenario, done) {
      yadda.yadda(scenario.steps, done);
   });
});

そして機能ファイル...

Feature: Mocha Asynchronous Example

Scenario: A bottle falls from the wall

Given 100 green bottles are standing on the wall
when 1 green bottle accidentally falls
then there are 99 green bottles standing on the wall

そして出力...

Mocha Asynchronous Example
✓ A bottle falls from the wall 

1 passing (12ms)
3
cressie176

Buster.JS をご覧ください。 javascriptテストに関する本 を文字通り書いたChristian Johansenによって作成されました。

BusterはTDDと [〜#〜] bdd [〜#〜] の両方をサポートしています。ブラウザーの自動化(JsTestDriverを考えてください)、QUnitスタイルの静的HTMLページのテスト、ヘッドレスブラウザー(PhantomJS、jsdom)などでのブラウザーテストを行います。

2
Tauren

パッケージa(bddとモック) https://npmjs.org/package/a

非常にコンパクトな構文、行為から分離されたコンテキスト、連鎖可能な行為。再帰的に検索する簡単なCmdラインランナー。

1
Lars-Erik Roald

単体テストMocha は単体テストに最適です。

BDDテストNode.jsのBDDテストフレームワークが必要な場合は、 Cucumber パッケージをお勧めします。

1
Thomas Bratt

私も良いGherkin実装を探していました。mocha-cakes/ mocha-cakes-2が見つかりましたが、これはニースですが、十分な機能を備えていませんでした。そこで、Mochaをベースとして独自に構築します。これは、Scenario Outlinesを含むガーキン言語と同等です。また、テスト内のデータを簡単に参照できます。 cucumber.jsとは異なり、すべてインラインではなく個別のファイルです。プロジェクトは次の場所にあります。

livedoc-mocha

0
dnp

私は先月同じ懸念を経験していました。

BDDの場合:

Mocha自体は、describeおよびitステートメントによってBDDスタイルを提供しますが。

キュウリのようなスタイルの場合、あなたは試すことができます:

  • モカケーキ
  • モカガーキン
  • cucumber.js
  • きゅり
  • モカキュウリ

彼らはすべて独自のスタイルを持っています。作業用のスニペットを現在提供できないのでごめんなさい。どちらを選択するかを@Donaldに知らせてください。あなたの洞察を知りたいです。

0
user3251882