javascript - 如何解决 "ReferenceError: expect is not defined"错误消息?

标签 javascript node.js mocha.js

我正在尝试用 mocha 测试 Javascript。我有这段代码:

describe('Array', function() {
    describe('indexOf()', function() {
        it("dovrebbe tornare -1 quando l'elemento non è presente", function() {
            expect([1,2,3].indexOf(4)).to.equal(-1)
        })
    })
})

和一个 test/array.js 文件。 Mocha 安装了

$ npm install -g mocha

当我运行时

$ mocha

我收到此错误:

$ mocha
․ 

0 passing (5ms)
1 failing

1) Array indexOf() dovrebbe tornare -1 quando l'elemento non è presente:
 ReferenceError: expect is not defined
  at Context.<anonymous> (/Users/simonegentili/Desktop/Javascipt Best Practice/test/array.js:4:4)
  at Test.Runnable.run (/usr/local/lib/node_modules/mocha/lib/runnable.js:211:32)
  at Runner.runTest (/usr/local/lib/node_modules/mocha/lib/runner.js:358:10)
  at /usr/local/lib/node_modules/mocha/lib/runner.js:404:12
  at next (/usr/local/lib/node_modules/mocha/lib/runner.js:284:14)
  at /usr/local/lib/node_modules/mocha/lib/runner.js:293:7
  at next (/usr/local/lib/node_modules/mocha/lib/runner.js:237:23)
  at Object._onImmediate (/usr/local/lib/node_modules/mocha/lib/runner.js:261:5)
  at processImmediate [as _immediateCallback] (timers.js:317:15)

最佳答案

Mocha 是一个测试框架;您需要提供自己的断言库为 https://mochajs.org/#assertions状态。因此,expect 确实是未定义的,因为您从未定义过它。

(我推荐chai)

npm install chai

然后

(参见 Amit Choukroune 的评论指出实际上需要 chai)

然后

var expect = chai.expect;

关于javascript - 如何解决 "ReferenceError: expect is not defined"错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19191384/

相关文章:

javascript - 使用 chai-http 使用 mocha-chai 进行测试期间出现 UnhandledPromiseRejectionWarning

javascript - Typeof 根据括号的不同进行不同的评估

javascript - Bootstrap 选项卡显示事件仅在第一次触发,不会在第二次或以后的选项卡切换时触发

Node.js 服务器处理请求回调函数在写入响应之前结束

Mysql - 更新+插入json

node.js - 如何从 Node.js 中的异步 axios 请求中获取数据

javascript - 使用 Mocha 和 Superagent 在裸 Node.js 应用程序中测试帖子

arrays - 错误: [$injector:unpr] Unknown provider: $stateProvider <- $state

javascript - GitHub 使用哪个库来美化 JavaScript 代码?

javascript - 按钮不响应悬停或单击