为什么这个测试在 Node 上失败.js 应该和摩卡


'use strict';
var should = require('should');
describe('wtf', function () {
    it('compare arrays', function (done) {
        [].should.equal([]);
    });
});

我的测试工作正常,直到我从 brew 安装的节点 10.26 切换到 nvm 安装的 10.33 版本。

这是错误:

AssertionError: expected [] to equal []
Expected :[]
Actual   :[]

should( [actual] ).eql( [comapre] ) - 深度比较


这将通过

it('compare arrays', function (done) {
    var test = [];
    should(test).eql([]);
    done();
});

这将失败

it('compare arrays', function (done) {
    var test = ['t'];
    should(test).eql([]);
    done();
});

注意:请记住用done()完成async测试

最新更新