Karma Not Running - 无法找到模块gulp

时间:2015-12-11 16:00:10

标签: angularjs unit-testing gulp karma-runner

我正在尝试在我的Angular项目中使用Jasmine设置业力测试。

我无法获得基本测试

`it("dummy", function() {
    expect(true).toBe(true);`

运行,我收到错误:

PhantomJS 1.9.8(Linux 0.0.0)错误   错误:找不到模块'gulp'

这是我的吞咽测试任务:

gulp.task('test', function(coverage) {
   gulp.src('dummy')
   .pipe(karma({
   configFile: 'karma.conf.js',
   action: 'run'
  }))
  .on('error', function(err) {
      // Make sure failed tests cause gulp to exit non-zero
      throw err;
  });

});

这是我的业力配置文件:

module.exports = function(config) {
  config.set({
    // base path, that will be used to resolve files and exclude
    basePath: '',

    // testing framework to use (jasmine/mocha/qunit/...)
    frameworks: ['browserify', 'jasmine'],

    plugins : [
      'karma-browserify',
      'karma-jasmine',
      'karma-phantomjs-launcher'
    ],

    preprocessors: {
      'src/app/**/*.spec.js': [ 'browserify' ], 
      'src/components/**/*.spec.js': [ 'browserify' ], 
      'src/services/**/*.spec.js': [ 'browserify' ]
    },

    // list of files / patterns to load in the browser
    files: [
      'bower_components/jquery/dist/jquery.js',
      'bower_components/angular/angular.js',
      'bower_components/angular-cookies/angular-cookies.js',
      'bower_components/angular-mocks/angular-mocks.js',
      'bower_components/angular-resource/angular-resource.js',
      'bower_components/**/*.js',
      'src/**/*.spec.js'
    ],

    // list of files / patterns to exclude
    exclude: [],

    // web server port
    port: 8080,

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


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


    // Start these browsers, currently available:
    // - Chrome
    // - ChromeCanary
    // - Firefox
    // - Opera
    // - Safari (only Mac)
    // - PhantomJS
    // - IE (only Windows)
    browsers: ['PhantomJS'],


    // Continuous Integration mode
    // if true, it capture browsers, run tests and exit
    singleRun: false
  });
};

请帮助我stackoverflow你是我唯一的希望!

1 个答案:

答案 0 :(得分:3)

最常见的问题:你是否正确安装了gulp?

npm install gulp

还要检查要加载到fileskarma.conf.js属性中的文件。应该只有你的第三方库js文件,你的自定义js文件和你的测试文件。

你的gulp任务也有可能不正确,但由于我经常使用咕噜声,我不能真正帮助那个部分:P