5

我正在使用 mocha-phantomjs 配置成功运行我的测试用例。现在我正在使用 Karma 启动器运行这些测试。但我明白了Chai is not defined

这是我的配置文件。

 module.exports = function(config) {
  config.set({
    client: {
        mocha: {
            ui: 'tdd'
        }
    },
    basePath: '',
    frameworks: ['mocha'],
    files: [
      'web/js/*.js',
      'test/lib/*.js',
      'node_modules/chai/chai.js'  //added this on suggestion of the answer in stackoverflow
    ],
    exclude: [
    ],
    preprocessors: {
    },
    reporters: ['progress'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['Firefox'],
    singleRun: false,
  });
};

在此处输入图像描述

我已经研究过它并找到了这个链接

4

2 回答 2

5

我为 chai 安装了 karma-chai 插件 https://github.com/eclifford/karma-chai-jquery/issues/3

将框架更改为此。

frameworks: ['mocha', 'chai']

并添加这些依赖项。

npm install karma-chai --save-dev

现在我已经解决了我的问题。希望这对您也有帮助。

于 2014-08-26T11:33:13.173 回答
1

您可以按照批准的答案中的建议安装karma-chai并添加chai到您的框架中,它会起作用,但如果您更喜欢另一种方式,您也可以在通常列出依赖项的文件中列出它。用 bower 安装 chai 并添加bower_components/chai/chai.js到文件列表中,它应该可以工作。因此,您的配置可能如下所示:

files: [
  'bower_components/chai/chai.js',
  '*.test.js'
],

在您上面的文件列表中node_modules/chai/chai.js,您说这些文件是根据 StackOverflow 上某人的建议添加的。它可能不起作用,因为它在测试之前没有正确订购。

在我的karma.conf.js文件中,它指向https://npmjs.org/browse/keyword/karma-adapter以获得框架列表,奇怪的karma-chai是没有包含在列表中,而且 karma-chai 似乎与 RequireJS 有问题。

于 2015-07-04T01:18:18.337 回答