gpt4 book ai didi

javascript - 期望对象具有所有给定的属性

转载 作者:行者123 更新时间:2023-11-30 11:25:11 25 4
gpt4 key购买 nike

我正在使用 Jest 为我的 Node.js 应用程序编写单元测试,我正在尝试测试 API 端点是否返回具有一组预先确定的属性的对象。我有以下内容:

const sampleResponse = {
"Game": "GameName",
"World": "2",
"Location": "ServerLocation",
"Timestamp": 1516204557853,
"alive": true,
"time": 10.1,
"min": 8.927,
"max": 10.154,
"avg": 9.409
};

然后我使用以下代码来测试对象属性:

test("Location for server cluster exists, and returns an array of objects", () => {
return Request(Routes.LocationSpecific).then((result) => {
expect(result[0]).toMatchObject(sampleResponse);
});
});

其中result是一个包含数据的对象数组,类似于上面的对象,我只是简单匹配result[0]

测试失败,因为从我的 API 端点返回的每个对象属性的值与上面的示例数据不匹配。属性存在,红色出现在我的终端中,因为值不匹配,但我想让它变成绿色。

有没有办法将 result[0] 的所有给定属性与示例对象匹配,而不管它们的值如何?

最佳答案

比较键的数组:

expect(Object.keys(result[0])).toEqual(Object.keys(sampleResponse));

关于javascript - 期望对象具有所有给定的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48308443/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com