期望断言类型错误 - > expect(...).toExist不是函数

mda*_*kar 11 mocha.js node.js

我正在测试一个nodejs应用程序.我在运行测试时发现此错误的位置.测试脚本如下:

.expect( (res) => {
    expect(res.headers['x-auth']).toExist();
    expect(res.body._id).toExist();
    expect(res.body.email).toBe(email);
})
Run Code Online (Sandbox Code Playgroud)

错误显示:

TypeError: expect(...).toExist is not a function
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?TIA.

AKe*_*nny 26

期望断言库已经改变了所有权.它被移交给Jest团队,他们以无限的智慧创造了一个新的API.

您现在必须使用'toBeTruthy()'而不是'toExist()'.您仍然可以像以前一样安装expect," npm install expect --save-dev",目前版本为21.2.1.除少数几个外,大多数方法名称都将保持不变,包括'toExist()'.

  • 如果您正在测试对象包含某些属性和值,则可以尝试使用.toMatchObject)(obj). (2认同)