业力:浏览器空闲

时间:2015-07-29 14:43:12

标签: karma-runner karma-jasmine

我是第一次尝试Karma,几个小时后我仍然无法让它工作。

当我在终端中输入karma start karma.conf.js来运行测试时,浏览器窗口会打开并显示以下内容(我也尝试过使用相同结果的Chrome):

enter image description here

这是终端输出:

29 07 2015 16:27:12.835:INFO [karma]: Karma v0.13.3 server started at http://localhost:9876/
29 07 2015 16:27:12.852:INFO [launcher]: Starting browser Firefox
29 07 2015 16:27:15.866:INFO [Firefox 33.0.0 (Windows 7 0.0.0)]: Connected on socket HA1RSN-QsWuAO7NIAAAA with id 26755366

我的karma.conf.js文件位于我的Node.js项目的根目录,如下所示:

module.exports = function(config) {
  config.set({
    basePath: '',
    frameworks: ['jasmine'],
    files: [
        'tests/unit/test.js'
    ],
    exclude: [],
    preprocessors: {},
    reporters: ['progress'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: false,  
    browsers: ['Firefox'],
    singleRun: false
  })
}

我的test.js文件看起来像这样(来自一本书的示例测试,我的实际测试将是Angular.js测试):

describe("First Test", function () {
    var counter;
    beforeEach(function () {
        counter = 0;
    });
    it("increments value", function () {
        counter++;
        expect(counter).toEqual(1);
    });
    it("decrements value", function () {
        counter--;
        expect(counter).toEqual(0);
    });
});

我使用的是Node.js版本0.12.05。

我很感激任何帮助,因为我觉得这里真的迷失了。

1 个答案:

答案 0 :(得分:11)

如果您希望执行测试运行,则需要触发测试运行。有两种方法可以做到这一点

  1. 在同一工作目录的第二个终端窗口中运行karma run karma.conf.js
  2. 将选项singleRun更改为true,这样就会启动,执行测试然后退出。