Wir landeten Tests und verspotteten Daten unter dem spec
Ordner der Rails App und konfigurierten Karma, um sie ebenso wie unsere getesteten zu importieren Code von app/assets
.
Funktioniert für uns. Andere Gedanken sind willkommen.
Unsere config/karma.conf.js
Datei:
basePath = '../';
files = [
JASMINE,
JASMINE_ADAPTER,
//libs
'vendor/assets/javascripts/angular/angular.js',
'vendor/assets/javascripts/angular/angular-*.js',
'vendor/assets/javascripts/jquery-1.9.1.min.js',
'vendor/assets/javascripts/underscore-min.js',
'vendor/assets/javascripts/angular-strap/angular-strap.min.js',
'vendor/assets/javascripts/angular-ui/angular-ui.js',
'vendor/assets/javascripts/angular-bootstrap/ui-bootstrap-0.2.0.min.js',
//our app!
'app/assets/javascripts/<our-mini-app>/**',
// and our tests
'spec/javascripts/<our-mini-app>/lib/angular/angular-mocks.js',
'spec/javascripts/<our-mini-app>/unit/*.coffee',
// mocked data
'spec/javascripts/<our-mini-app>/mocked-data/<data-file>.js.coffee',
];
autoWatch = true;
browsers = 'PhantomJS'.split(' ')
preprocessors = {
'**/*.coffee': 'coffee'
}
Ich erstellte einen Ordner/spec/angular, wo ich jede Testdatei, mit/spec/eckig/e2e,/spec/eckig/Einheit, etc ... Aber wie hast du die karma.conf.js? Ich bin nicht sicher, ob das Proxiesattribut richtig ist: 'proxies = { '/': 'http: // localhost: 3000 /' };' Ich habe Fehler, sogar einen einfachen Test zu laufen, es ist wie Javascript Zu testende Quellen sind nicht enthalten. – p1nox
PD: Ich arbeite mit Legacy-Code, der application.js.erb als Manifest für alle Javascript-Dateien verwendet, auch eckige Anwendung, in meiner karma.conf.js habe ich 'files = [ ANGULAR_SCENARIO, ANGULAR_SCENARIO_ADAPTER, '. ./../app/assets/javascripts/application.js ', ' */* Spec.js ' ]; ' – p1nox
BTW Ich teste, ob ein Modul namens" StSelector "da ist und es funktioniert (http: //www.yearofmoo.com/2013/01/full-spectrum-testing-with-angularjs-and-testacular.html#testing-modules), und ich bekomme 'Midway: Testing Module StSelector Module: sollte registriert werden FAILED \t Fehler: Kein Modul: StSelector' – p1nox