Ich versuche Einheitentest zu meinen Controllern und Services meines mit CoffeeScript geschriebenen Ionischen Projekts zu schreiben. Ich entschied mich für Karma und Jasmin. Das Problem ist, dass es keinen Interpreter coffeeScript gibt. Deshalb habe ich dieses Plugin Karma-Kaffee-Präprozessor verwendet, so dass es möglich ist. Ich weiß nicht, ob ich es richtig mache.CoffeeScript Code UnitTest AngularJS - Jasmin - Karma
Ich habe das Plugin mit dem Befehl installiert; npm install --save-dev karma-coffee-preprocessor
ich konfiguriert dann Datei mein Test Config wie folgt:
module.exports = function(config) {
config.set({
basePath: '',
frameworks: ['jasmine'],
files: [
'../bower_components/angular/angular.js',
'../bower_components/angular-ui-router/release/angular-ui-router.js',
'../bower_components/angular-mocks/angular-mocks.js',
'../src/scripts/**/*.coffee',
'unit-tests/**/*.js'
],
exclude: [
],
preprocessors: {
'../src/scripts/**/*.coffee': ['coffee']
},
coffeePreprocessor: {
options: {
bare: true,
sourceMap: false
},
transformPath: function(path) {
return path.replace(/\.coffee$/, '.js')
}
},
reporters: ['progress'],
port: 9876,
colors: true,
logLevel: config.LOG_DEBUG,
autoWatch: true,
browsers: ['PhantomJS'],
singleRun: false,
concurrency: Infinity
})
}
Aber wenn ich versuche, meinen Test ich diesen Fehler haben zu starten:
Can not load "coffee", it is not registered!
Perhaps you are missing some plugin?
/opt/node/lib/node_modules/karma/node_modules/di/lib/injector.js:9
throw error('No provider for "' + name + '"!');
^
Error: No provider for "framework:jasmine"! (Resolving: framework:jasmine)
at error (/opt/node/lib/node_modules/karma/node_modules/di/lib/injector.js:22:12)
at Object.parent.get (/opt/node/lib/node_modules/karma/node_modules/di/lib/injector.js:9:13)
at get (/opt/node/lib/node_modules/karma/node_modules/di/lib/injector.js:54:19)
at /opt/node/lib/node_modules/karma/lib/server.js:138:20
at Array.forEach (native)
at Server._start (/opt/node/lib/node_modules/karma/lib/server.js:137:21)
at invoke (/opt/node/lib/node_modules/karma/node_modules/di/lib/injector.js:75:15)
at Server.start (/opt/node/lib/node_modules/karma/lib/server.js:102:18)
at Object.exports.run (/opt/node/lib/node_modules/karma/lib/cli.js:243:26)
at Object.<anonymous> (/opt/node/lib/node_modules/karma/bin/karma:3:23)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Function.Module.runMain (module.js:447:10)
at startup (node.js:146:18)
Kann mir jemand helfen? Ich habe Probleme mit diesen Komponententests, und ich weiß nicht, ob ich die Dinge richtig mache.