Jea*_*ERY 2 javascript typescript jestjs ts-jest
我需要一些建议,目前我想测试对象集合中的每个对象是否都具有正确的结构,所以我这样做:
const allExercises = listAllExercises()
describe("listAllExercises | should return all exercises", () => {
test("Each exercise should have the right structure", () => {
const keys = [
"name",
"execution",
"level",
"is_poly_articular",
"practice",
"gender",
"body_focus",
]
allExercises.forEach((exercise) => {
expect(Object.keys(exercise).sort()).toEqual(keys.sort())
})
})
})
Run Code Online (Sandbox Code Playgroud)
它工作得很好,但我想知道这是否是正确的方法,你有更好的解决方案来用笑话测试对象的键吗?
您可以使用arrayContaining(array)检查它
const expectedKeys = [
"name",
"execution",
"level",
"is_poly_articular",
"practice",
"gender",
"body_focus",
];
expect(array).toEqual(expect.arrayContaining(expectedKeys));
Run Code Online (Sandbox Code Playgroud)
它将预期数组检查为接收值的子集,因此它以不同的顺序工作,但存在相同的键。
| 归档时间: |
|
| 查看次数: |
1669 次 |
| 最近记录: |