无法理解"注射器已经创建,无法注册模块!" 错误

Ton*_*nis 11 angularjs

我的应用程序似乎运行良好.我开始编写测试用例并且已经创建了可怕的Injector,无法注册模块!错误.

这是我的测试代码.这些是文件中的唯一行.

'use strict';

var fac,
    osf,
    obff;

beforeEach(module("myApp"));

beforeEach(inject(function (OrderSashingFactory) {
    fac = OrderSashingFactory;
}));
Run Code Online (Sandbox Code Playgroud)

我真的不知道从哪里开始 - 我是在圈子里.

编辑 - 这是我的karma.conf.js文件.我还有其他测试运行正常.

// Karma configuration
// Generated on Mon Aug 25 2014 21:08:59 GMT-0400 (Eastern Daylight Time)

module.exports = function (config) {
    config.set({

        // base path, that will be used to resolve files and exclude
        basePath: '',


        // frameworks to use
        frameworks: ['mocha', 'chai', 'sinon'],


        // list of files / patterns to load in the browser
        files: [
            'app/bower_components/angular/angular.js',
            'app/bower_components/angular-route/angular-route.js',
            'app/bower_components/angular-mocks/angular-mocks.js',
            'app/js/*.js',
            'app/test/js/*.js',
            'app/partials/**/*.html'
        ],

        preprocessors: {
            'app/partials/**/*.html' : 'html2js'
        },

        ngHtml2JsPreprocessor: {
            // strip app from the file path
            stripPrefix: 'app/'
        },

        // list of files to exclude
        exclude: [

        ],

//        plugins: [
//            'karma-mocha',
//            'karma-chrome-launcher'
//        ],


        // test results reporter to use
        // possible values: 'dots', 'progress', 'junit', 'growl', 'coverage'
        reporters: ['progress'],


        // web server port
        port: 9876,


        // enable / disable colors in the output (reporters and logs)
        colors: true,


        // level of logging
        // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
        logLevel: config.LOG_INFO,


        // enable / disable watching file and executing tests whenever any file changes
        autoWatch: true,


        // Start these browsers, currently available:
        // - Chrome
        // - ChromeCanary
        // - Firefox
        // - Opera (has to be installed with `npm install karma-opera-launcher`)
        // - Safari (only Mac; has to be installed with `npm install karma-safari-launcher`)
        // - PhantomJS
        // - IE (only Windows; has to be installed with `npm install karma-ie-launcher`)
        browsers: ['Chrome'],


        // If browser does not capture in given timeout [ms], kill it
        captureTimeout: 60000,


        // Continuous Integration mode
        // if true, it capture browsers, run tests and exit
        singleRun: false
    });
};
Run Code Online (Sandbox Code Playgroud)

axe*_*uch 24

你没有把你的考试包裹起来describe,它看起来像这样:

describe('MyTestName', function () { 
    'use strict';

    var fac,
        osf,
        obff;

    beforeEach(module("myApp"));

    beforeEach(inject(function (OrderSashingFactory) {
        fac = OrderSashingFactory;
    }));
});
Run Code Online (Sandbox Code Playgroud)


zay*_*uan 5

如果您正在混合呼叫module('someApp'),inject($someDependency)您将收到此错误.

您的所有来电module('someApp')必须在您致电之前进行 inject($someDependency).