【发布时间】:2019-06-17 04:05:38
【问题描述】:
我正在尝试测试类似的功能:
function foo() {
return {
key_a: "val_a",
key_b: new Date()
};
我怎样才能为这种情况制作一个预期的对象进行测试?
const expectedObject = {
key_a: "val_a",
key_b: new Date()
}
expect(foo()).toEqual(expectedObject)?
- Expected
+ Received
- "key_b": 2019-01-23T14:04:03.060Z,
+ "key_b": 2019-01-23T14:04:03.061Z,
【问题讨论】:
-
我猜你需要验证日期是否在范围内
-
你真的应该监视
new Date函数(没有使用过 jest 但假设你可以像在 jasmine 中一样),你只需要测试它是同一个函数,而不是它返回什么,你'希望已经测试过了 -
@DarrenSweeney,也许吧,但在这种情况下,我如何确定我的函数返回的正是我想要的?我的意思是我的主要目的是确保该函数将返回我需要的内容... :) 假设它只是从工厂返回的一小部分数据^^
-
当你监视函数时,让它返回一些东西并检查它是否返回了你所期望的 - 仔细阅读它,间谍在测试方面非常强大
标签: javascript jestjs