如何使用全局安装的Karma插件

时间:2014-07-10 14:52:53

标签: node.js npm karma-runner

我已经安装了一些业力插件,例如:karma-requirejs,karma-jasmine ...全球使用npm install -g

现在我想在业力测试执行中使用它们。我发现使用它们的唯一方法是在karma配置的插件部分使用require函数:

plugins: [

      require('/usr/local/lib/node_modules/karma-requirejs'),
      require('/usr/local/lib/node_modules/karma-jasmine'),
      require('/usr/local/lib/node_modules/karma-junit-reporter'),
      require('/usr/local/lib/node_modules/karma-phantomjs-launcher'),
      require('/usr/local/lib/node_modules/karma-coverage'),
      require('/usr/local/lib/node_modules/karma-requirejs')
  ],

我认为业力会首先查看本地node_modules然后再查看全局。但我必须设置完整的路径。 有没有办法在没有完整路径的情况下使用全局安装的插件?

1 个答案:

答案 0 :(得分:1)

对我来说这看起来很糟糕......但是,你可以这样做我认为:

  • karma config
  • 中照常列出
plugins: [
  'karma-requirejs',
  'karma-jasmine',
  'karma-junit-reporter',
  'karma-phantomjs-launcher',
  'karma-coverage',
  'karma-requirejs'
],
  • 请勿将它们添加到 package.json (npm)
"devDependencies": {
  "karma": "0.12.17"
  // remove all the plugins listed above
}

NB: Karma将使用全局安装的节点模块,如果丢失则会抛出错误。