Karma在Karma开始时挂起

Tim*_*sen 7 jasmine karma-runner karma-jasmine

我是Karma的新手.当我跑:

karma start myconfigfile.js
Run Code Online (Sandbox Code Playgroud)

Karma正在开始使用chrome,但它始于业力,并且没有更多的事情发生.但是我可以进入http://localhost:9876/debug.html并且可以看到测试已在控制台中运行.我的测试在里面 vendor/Jasmine/spec/PlayerSpec.js.

这是使用业力进行测试的正确方法还是有更多的UI友好方式?

因为我可以看到业力窗口应该是这样的.

有没有人有同样的问题?

这是我的配置文件:

module.exports = function(config) {
  config.set({
    basePath: '/',
    frameworks: ['jasmine'],
    files: [
        'nodejs/node_modules/karma-jasmine/lib/jasmine.js',
        'nodejs/node_modules/karma-jasmine/lib/adapter.js',
        'nodejs/node_modules/requirejs/*.js',
        'vendor/Jasmine/spec/PlayerSpec.js',
        'angular/angular.min.js',
        'angular/angular-mocks.js'

    ],
    exclude: [

    ],
    preprocessors: {

    },
    reporters: ['progress'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_DEBUG,
    autoWatch: true,
    browsers: ['Chrome'],
    singleRun: false
  });
};
Run Code Online (Sandbox Code Playgroud)

Mar*_*coL 12

Karma由两个主要部分组成:a server和a runner.

第一个准备测试环境并生成浏览器,但是第二个开始测试.

要启动服务器,您必须运行karma start,而对于第二个,您必须在第二个shell中启动karma run <configuration_file_path>- 尝试并查看运行的测试.

如果要自动启动它,只需在配置文件中更改此行:

  singleRun: true // => is was false
Run Code Online (Sandbox Code Playgroud)

此时,Karma将设置服务器,运行测试并在完成时关闭.