karma.conf.js automatische Dateibestellung?

Ich habe ein großes AngularJS-Projekt, das nach Funktionen sortiert ist. Ich würde gerne Unit-Tests einrichten, habe aber Probleme, das Setup für die karma.conf.js-Datei abzurufen.

Ich habe versucht, ein einfaches Glob-Muster wie ** / *. Js anzugeben, aber viele meiner Module konnten nicht geladen werden, da sie beim Ausführen in Karma enthalten waren. Soweit ich weiß, ist es alphabetisch.

Ich konnte dieses Problem lösen, indem ich die Reihenfolge manuell herausgefunden habe, indem ich Folgendes tat:

// 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'
],

Dies scheint umständlich zu sein, wenn neue Module hinzugefügt werden. Gibt es eine Möglichkeit, die Bestellung automatisch aufzulösen?

Hinweis: Eine mögliche Lösung bestand darin, alle Dateien zusammenzufassen, aber ich habe gegoogelt, um zu sehen, ob andere dies tun, und keine Beispiele gefunden.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage