如何让Karma运行这些测试文件?

mpe*_*pen 5 karma-runner

我是自动化测试的新手.我正在尝试在我的IDE WebStorm中运行一些测试.它似乎支持jsTestDriver和Karma.据我了解,JsTestDriver本身并不支持这些测试所需的RequireJS .

然而,卡玛说它确实如此.我已经创建了一个测试文件,

module.exports = function(config) {
    config.set({
        basePath: '',
        frameworks: ['jasmine', 'requirejs'],
        files: [
            {pattern: 'spec/*.spec.js', included: false},
        ],
        reporters: ['progress'],
        port: 9885,
        colors: true,
        logLevel: config.LOG_INFO,
        autoWatch: false,
        browsers: ['PhantomJS'],
        captureTimeout: 10000,
        singleRun: true
    });
};
Run Code Online (Sandbox Code Playgroud)

但它输出后似乎挂起(从节点终端运行):

C:\Users\Mark\Documents\GitHub\timezone-js>karma start
INFO [karma]: Karma v0.10.1 server started at http://localhost:9885/
INFO [launcher]: Starting browser PhantomJS
INFO [PhantomJS 1.9.1 (Windows 8)]: Connected on socket id MYUP0uo-jk-3W8hB8trx
Run Code Online (Sandbox Code Playgroud)

如果我在浏览器中运行它并检查JavaScript控制台,我会得到:

ReferenceError: require is not defined  
http://localhost:9878/base/spec/date.spec.js  
Line 1
Run Code Online (Sandbox Code Playgroud)

如果Karma支持它并且我把它作为框架之一包括它,为什么它抱怨"要求"?

Voj*_*jta 7

查看文档.

您缺少一些test-main.js文件,您可以在其中配置Require.js并通过要求某些内容(可能是所有测试)启动测试运行.