2017-06-01 58 views
0

我有一个单元测试来控制元素列表。摩卡 - 柴:如何列出测试过程中的所有错误

例如:

arr = [ 
{ element : "aaa", 
    validation : false 
}, 
{ element: "bbbb", 
    validation: true 
}, 
{ element: "ccc", 
    validation: false 
} 

在我的单元测试,我想列出所有无效的元素,但与摩卡和柴,他停止了第一个无效元素上。 如何强制摩卡进行错误测试?

我的代码“它”:

it('Read element',() => { 
    let length = arr.length - 1; 
     for (let i =0; i<= length; i++) { 
    assert.equal(arr[i].validation, true, 'route ' + arr[i].element+ ' should be valid); 
     } 
}); 

回答

3

您可以创建每个数组项单独的测试:

describe('Read element',() => { 
    arr.forEach(item => { 
    it('route ' + item.element + ' should be valid',() => { 
     assert.equal(item.validation, true); 
    }); 
    }); 
}); 
+0

谢谢,这个解决方案帮助我完成我的任务。 – Seb

2

你可以使用,而不是循环您的阵列deepEqual匹配,构建一个数组匹配。

let validationArray = arr = [ 
{ element : "aaa", 
    validation : true 
}, 
{ element: "bbbb", 
    validation: true 
}, 
{ element: "ccc", 
    validation: true 
}]; 

assert.deepEqual(arr, validationArray); 
相关问题