相关疑难解决方法(0)

karma.conf.js自动文件排序?

我有一个按功能排序的大型angularjs项目.我想设置单元测试,但是我无法获得karma.conf.js文件的排序设置.

我尝试指定一个简单的glob模式,如**/*.js,但是我的许多模块都因为在运行时包含在Karma中的顺序而无法加载.据我所知,这是按字母顺序排列的第一场比赛.

我能够通过这样做来手动计算排序来解决这个问题:

// list of files / patterns to load in the browser
files: [
  // External scripts
  'bower_components/angular/angular.js',
  'bower_components/angular-mocks/angular-mocks.js',
  'bower_components/angular-cookies/angular-cookies.js',
  'bower_components/angular-resource/angular-resource.js',
  'bower_components/angular-route/angular-route.js',

  // NOTE: ORDER IS IMPORTANT
  // Modules: load module first, then all controllers, services, etc
  'scripts/module1/module1.js',
  'scripts/module1/**/*.js',
  'scripts/module2/module2.js',
  'scripts/module2/**/*.js',

  // Load overall app module last
  'scripts/app.js',

  // Load mocks and tests
  'test/mock/**/*.js',
  'test/spec/**/*.js'
],
Run Code Online (Sandbox Code Playgroud)

随着时间的推移,随着新模块的添加,这似乎很麻烦.有没有办法自动解决订购?

注意:我想到的一个可能的解决方案是将所有文件连在一起,但我搜索了一下是否其他人正在这样做并且没有找到任何示例.

jasmine phantomjs angularjs karma-runner karma-jasmine

7
推荐指数
1
解决办法
5765
查看次数