Mocha 中的节点和 Require 导入错误?

Node and Require import error in Mocha?

我有一个正在运行的 Node 应用程序,我正在尝试添加 Mocha 测试,但出现了一些奇怪的导入错误。

这是我的文件结构:

package.json
index.js
src/
  chart.js
  highcharts-options.js
test/
  test_chart.js

这是我的 chart.js 文件的样子:

var chartOptions = require('./highcharts-options');
var analyseChart = {
  doSomething: function() { ... }
};
module.exports = analyseChart;

这就是 highcharts-options.js 的样子:

var HighCharts = require('highcharts-browserify');
Highcharts.theme = { ... };

目前我将 /src 中的所有内容导入到单个 index.js 文件中,然后将其与 browserify 捆绑在一起,效果很好,应用程序中没有错误。

现在我想开始为 /src 中的函数编写 Mocha 测试。

这是我在 test_chart.js 中的第一个存根:

var chart = require('../src/chart');
chart.doSomething();

但是当我 运行 mocha 时,我得到以下错误:

 Users/.../js/src/highcharts-options.js:11
    Highcharts.theme = {
    ^
    ReferenceError: Highcharts is not defined
        at Object.<anonymous> (/Users/.../js/src/highcharts-options.js:11:1)
        at Module._compile (module.js:456:26)
        at Object.Module._extensions..js (module.js:474:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.require (module.js:364:17)
        at require (module.js:380:17)
        at Object.<anonymous> (/Users/.../js/src/chart.js:7:20)
        at Module._compile (module.js:456:26)
        at Object.Module._extensions..js (module.js:474:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.require (module.js:364:17)
        at require (module.js:380:17)
        at Object.<anonymous> (/Users/.../js/test/test_chart.js:1:75)

我该如何解决这个 Mocha 导入错误?

var HighCharts = require('highcharts-browserify');
Highcharts.theme = { ... };

您有拼写错误。 高[cC]哈茨

即使有人告诉您到底出了什么问题,您自己怎么也没有注意到这一点? 有些错误是如此常见,以至于我们最终不再信任它们,甚至没有调查就开始在我们的代码中寻找其他错误。 对于 javascript.

中的 "someVar is undefined" 错误尤其如此

外卖:
有时您只需要相信您的错误消息。