typescript 茶“等于”比较失败?

xuo3flqw  于 2023-01-27  发布在  TypeScript
关注(0)|答案(2)|浏览(100)

//在typescript上使用chai & mocha来比较两个数组:

it('test my function', function () {
  let expectedResult = [ '100998', '100999' ];
  let res = myFunc();
  res.should.deep.equal(expectedResult);
})

但我得到的回答是

AssertionError: expected [ '100998', '100999' ] to equal [ '100998', '100999' ]

我哪里做错了?

vsmadaxz

vsmadaxz1#

您是否尝试使用expect来完成同样的事情?

const { expect } = require('chai');
// …
expect(res).to.deep.equal(expectedResult);

如果这样做有效,那么您设置should的方式就有问题了。

const should = require('chai').should(); // call the function!

如果还有问题,那么我们必须查看myFunc()定义

  • 旁注:只有当你要多次修改变量的值时,才应该使用let,这似乎不适合你,所以我建议你使用const。*
n3ipq98p

n3ipq98p2#

你可以像nbkhope提到的那样使用expect(res).to.be.deep.equal。这对我来说也是有效的。但是你应该小心。使用deep有时会损失精度。为什么会出现这种情况在this article中描述

相关问题