2016-04-25 12 views

答えて

1

チャイは、BDDアサーションライブラリです - などassertshouldなど

チャイをなどの一般的なキーワードをご提供約束として、具体的な約束とアサーションを処理するために作られ、そのライブラリの拡張である:この過去記事はあなたを助けるかもしれません(自分で手動で解決するのではなく)。あなたは、このようなexpectなどのキーワードを使用してコードをテストすることができますテストアサーション図書館、shouldなどしかし、チャイを使用しているときには、約束の世話をする必要があります -

https://github.com/domenic/chai-as-promised/

+0

あなたの答えをありがとう – Emna

1

プロミスを使用するコードのテストに役立ちます。これらのメソッドは、実行されるコールバックに依存しており、一般的には非同期であるため、テストするのが難しい場合があります。 http://www.sitepoint.com/promises-in-javascript-unit-tests-the-definitive-guide/

+0

角度のjsアプリケーションをテストすると、分度器でジャスミンまたはモカフレームワークを使用する方がよいでしょうか? – Emna

+1

@EmnaプロトラクターのドキュメントはJasmineを推奨していますが、どちらもサポートされています。 – Gunderson

+0

@Gundersonはい、私は何がお勧め、おかげで検索しています:) – Emna

5

チャイ。約束通り、あなたがチャイを使用する場合の例

var expect = require('chai').expect; 

it('should display correct tile', function() { 
    var blah = 'foo'; 

    var title = browser.getTitle(); 

    return title.then(function(actualTitle) { 
    expect(actualTitle).to.equal(expectedTitle); 
    }); 
}); 

一方のために、あなたは明示的に約束を処理する必要はありません。それはChai as promisedライブラリの助けを借りて行うことができます。例えば;

var chai = require('chai'); 
var expect = chai.expect; 

var chaiAsPromised = require('chai-as-promised'); 
chai.use(chaiAsPromised); 

it('should display correct title', function() { 

    var actualTitle = browser.getTitle(); 

    return expect(actualTitle).to.eventually.equal(expectedTitle); 
}); 
+0

ありがとうたくさんの例。 – Emna

関連する問題