错误:您需要包含一些实现__karma __.start方法的适配器

Dre*_*kes 85 karma-runner karma-jasmine

我正在尝试为我的一个项目添加一些单元测试.

到目前为止,我已经安装并配置了业力,并安装了茉莉.我的文件test/夹中有一个测试文件.

karma服务器已启动,浏览器页面已准备就绪,但karma run失败如下:

$ karma run karma-conf.js 
[2014-06-14 15:19:11.046] [DEBUG] config - Loading config /foo/test/karma-conf.js
Waiting for previous execution...
Chrome 35.0.1916 (Linux) ERROR
  You need to include some adapter that implements __karma__.start method!
Run Code Online (Sandbox Code Playgroud)

此错误消息不适合Google.

这是显而易见的,还是我需要提供更多信息?

Dre*_*kes 71

它似乎是一个非常普遍的错误,但在我的情况下,问题是我没有karma start从正确的文件夹运行,或者我没有在更改配置后重新启动它.

我将把这个问题保持开放,并希望它可以成为遇到此错误消息的其他人的资源.

  • 对我来说一样 - 运行`karma start test/karma.conf.js`为我做了诀窍.正确的目录可能与您不同. (25认同)
  • 帮助过我; 我在错误的目录中. (4认同)
  • 对我来说,将`test/**/*.{js,jsx}`更改为`test /**/*.+(js | jsx)`修复了这个错误.多奇怪啊! (4认同)
  • 添加预处理器时出现此错误:{'src/**/*.js':['babel']},有什么想法吗? (3认同)
  • 如果 karma 配置有拼写错误,也会出现此类错误 (2认同)

Jam*_*ruk 26

如果您命名您的业力配置文件karma.conf.js,您只需输入即可karma start.

否则指定文件名 karma start karmafile.js

(我在正确的目录中,但没有指定文件名.)


And*_*dyX 13

您需要karma run在karma-conf.js所在的文件夹中运行您或任何函数.


小智 7

在我的情况下,我不得不将文件重命名为karma.conf.js然后做业力开始


小智 6

我的karma.conf.js文件代码格式有问题:

files: [
    // Modules
    ,"client/bower_components/angular/angular.min.js"
    ,"client/bower_components/angular-mocks/angular-mocks.js"
    // App
    ,"client/app/app.module.js"
    // Test
    // ,"test/**/*.spec.js"
],
Run Code Online (Sandbox Code Playgroud)

files数组中的额外逗号导致此错误:

You need to include some adapter that implements __karma__.start method!
Run Code Online (Sandbox Code Playgroud)


Sun*_*arg 6

我没有从我的karma.conf.js所在的路径上运行karma start命令.我切换到该文件夹​​并运行相同的命令.就这样