我是应用于数组并更改其项目状态的单元测试方法。这些项目有不同的属性。 例如,我的数组如下:应用该方法使用项目索引的单元测试数组
var array = [{state: false}, {status: true}, {health: true}];
后(项目顺序是相关的),我检查这些值已经改变,并且我希望那些(我使用的是摩卡柴):
expect(array[0]).to.have.property('state', true);
expect(array[1]).to.have.property('status', false);
expect(array[2]).to.have.property('health', false);
现在,说,我想新能源项目添加到我的数组:
var array = [{state: false}, **{energy: true}**, {status: true}, **{energy: true}**, {health: true}];
我不得不改变我的0,1,我测试的2个索引0 ,2,4,也加上我的新项目的新测试。
什么是使用(或不使用)索引的好方法,以便每次添加新的项目类型时,我不必更改所有索引?
如果使用chai.config.showDiff = true配置chai;和chai.config.truncateThreshold = 0;那么深度平等失败信息将至少包括完整的对象。不幸的是,它并没有告诉你它们在哪里不同。 –
我曾尝试开启'showDiff',但没有意识到'truncateThreshold'是一个问题。这很好。谢谢!尽管如此,我仍然不愿意看到差异。 – Louis