2016-04-06 8 views
0

ジャスミンでエラーが発生する算術演算のための簡単なテストケースを作成しました例外をスローする機能が必要です。私はすでにそれをしました。ジャスミンJavaScript例外

specファイル

describe("Arithmetic Operation",function(){ 
    it("adds 2 numbers i.e. 5,5",function(){ 
     expect(doAddition(5,5)).toEqual(10); 
    }); 

    it("throws an error while adding", function() { 
     expect(function() {doAddition(1,2)}).toThrow(new Error("Not allowed.")); 
    }); 
}); 

のsrcファイル

function doAddition(a,b){ 
    return parseInt(a) + parseInt(b); 
} 

私は例外コードを削除する場合、それが正常に動作しています。どのような提案やアイデアがこれに間違っていますか?

+0

あなたはどのバージョンのジャスミンを使用していますか?より最近のバージョンのJasmineでは、 'toThrow'は引数を取っていません。代わりに['toThrowError'](http://jasmine.github.io/2.0/introduction.html#section-Included_Matchers)を使用してください。 –

+0

ジャスミン1.3.1です。その他の例外は、** toThrow **で正常に動作しています。 – Hearty

+0

その場合、 'doAddition(1,2)'は単に投げられません...あなたのテストには欠陥があります。 –

答えて

2

doAddition(1,2)は投げると期待していますが、したがって、テストは失敗します。

+0

** 5,5 **の場合、同じエラーが発生します。これは、カスタムエラーメッセージではなく、jasmine ** new jasmine.ExpectationResult **例外からのものです。 – Hearty

+1

'parseInt(5)+ parseInt(5)' **は**投げません。それは '10'を返します...あなたの最初のテストはそれを検証します。 –

関連する問題