2013-02-04 9 views
9

すべてのテストを実行するのではなく、最初の失敗後にランナーを停止させます。テストの失敗後にjasmine.jsを停止するにはどうすればよいですか?

+5

「これは本当の質問ではありません」 –

+0

公開されている問題はhttps://github.com/jasmine/jasmine/issues/414です。著者はプラグインhttps://github.com/goodeggs/jasmine-bail-fastを書いています。 Unforuntately 'this.results()'は私のAngularJSユニットテスト(カルマで実行)には存在しません。 –

答えて

5

ハックですが、これは最初のテストの前にこのスクリプトを挿入することで可能です。

<script type="text/javascript"> 
// after every test has run 
afterEach(function() { 
    // check if any have failed 
    if(this.results_.failedCount > 0) { 
    // if so, change the function which should move to the next test 
    jasmine.Queue.prototype.next_ = function() { 
     // to instead skip to the end 
     this.onComplete(); 
    } 
    } 
}); 
</script> 

ジャスミンの最新のは、これはこれは、ジャスミンのプロジェクトのために非常に人気のある機能要求であるhttps://github.com/pivotal/jasmine/commit/8b02bf731b193e135ccb486e99b3ecd7165bf95c

+0

'console.log(this.results_)'は未定義です " –

+0

これは2013年に投稿されて以来、Jasmine v2が出てきました –

+0

投票を削除する可能性がありますか? –

0

た印加時のコミット: それを実装するに関心があるように見えますhttps://github.com/jasmine/jasmine/issues/414

、しかし、それはまた非常に長い時間開いているので、誰がリリースされるかも知っています。あるいは、Mochaはこの機能を-b/- bailオプション:https://mochajs.org/#usageで実装しています。そのapiはJasmineと非常によく似ていますので、スイッチを作ることを検討してください。

関連する問題