【发布时间】:2014-04-30 09:16:08
【问题描述】:
当测试失败时,我使用expect(x).to.deep.equal(y) 比较两个对象,我想在浏览器测试报告中查看实际值。相反,我看到的是这样的:
AssertionError: expected { Object (x, y, ...) } to deeply equal { Object (x, y, ...) }
所以它并没有真正显示出任何有用的东西。
有没有办法自定义 chai.js 如何格式化这些对象?
【问题讨论】:
-
我发布了一个类似的问题。我没有解决方案,所以在这里评论:有人可以解释为什么在失败的断言中吐出对象上的原型属性和函数之类的东西会有用吗?这是为什么输出通常太大并且被截断或(如果设置为零截断)太长且难以阅读的重要部分。最好有一个选项更喜欢使用 toString(),因为我经常将这些方法添加到我自己的对象/类中以用于开发目的或其他目的,这在测试输出中会更有用
-
...这是@JasonBoyd 提到的类似问题的链接:How can I get Chai to show actual and expected values using toString()。