插件

Karma 可以通过插件轻松扩展。事实上,所有现有的预处理器、报告器、浏览器启动器和框架都是插件。

您可以从 npm 安装现有的插件,或者您可以为 Karma编写自己的插件

安装插件 #

推荐的安装插件方式是在您的package.json中将它们添加为项目依赖项。

{
  "devDependencies": {
    "karma": "~0.10",
    "karma-mocha": "~0.0.1",
    "karma-growl-reporter": "~0.0.1",
    "karma-firefox-launcher": "~0.0.1"
  }
}

因此,安装插件的一种简单方法是

npm install karma-<plugin name> --save-dev

加载插件 #

默认情况下,Karma 会加载所有同级 npm 包中的插件,这些包的名称以karma-*开头。

您也可以覆盖此行为,并通过plugins配置设置显式列出要加载的插件。

config.set({
  plugins: [
    // Load a plugin you installed from npm.
    require('karma-jasmine'),

    // Load a plugin from the file in your project.
    require('./my-custom-plugin'),
  
    // Define a plugin inline.
    { 'framework:xyz': ['factory', factoryFn] },

    // Specify a module name or path which Karma will require() and load its 
    // default export as a plugin.
    'karma-chrome-launcher',
    './my-fancy-plugin'
  ]
})

激活插件 #

将插件添加到plugins数组中只会使 Karma 意识到该插件的存在,但不会激活它。根据插件类型,您需要将插件名称添加到frameworksreporterspreprocessorsmiddlewarebrowsers配置键中以激活它。有关详细信息,请参阅相应的插件文档或查看开发插件指南以更深入地了解插件的工作原理。