前のテストが失敗した場合にのみ起動するロジックを使用してafterEachフックを作成しようとしています。例えば:
it("some_test1", function(){
// something that could fail
})
it("some_test2", function(){
// something that could fail
})
afterEach(function(){
if (some_test_failed) {
// do something to respond to the failing test
} else {
// do nothing and continue to next test
}
})
ただし、afterEachフック内からテストが失敗したかどうかを検出する方法はわかっていません。モカに付けられるイベントリスナーはありますか?多分このようなもの:
myTests.on("error", function(){ /* ... */ })
this.currentTest.state
を使用できます(これがいつ導入されたかはわかりません):
afterEach(function() {
if (this.currentTest.state === 'failed') {
// ...
}
});