I use the Yeoman + Angular generator for my application, and I worked a lot with Jasmine! This is where I am stuck. I want to be able to use jQuery selectors with Jasmine tests. I installed karma-jasmine and karma-jasmine-jquery packages. Then I installed it for the gazebo (I am a beginner, and I have no idea what needs to be installed for what!). I manually added the path to my karma.conf.js , but I still get a message that says the following:
Running "karma:unit" (karma) task Warning: No provider for "framework:jasmine-jquery"! (Resolving: framework:jasmine-jquery) Use --force to continue.
Here's what my karma configuration looks like:
// Karma configuration // http://karma-runner.imtqy.com/0.12/config/configuration-file.html // Generated on 2014-09-12 using // generator-karma 0.8.3 module.exports = function(config) { 'use strict'; config.set({ // enable / disable watching file and executing tests whenever any file changes autoWatch: true, // base path, that will be used to resolve files and exclude basePath: '../', // testing framework to use (jasmine/mocha/qunit/...) frameworks: ['jasmine-jquery', 'jasmine'], // list of files / patterns to load in the browser files: [ 'bower_components/jasmine-jquery/lib/jasmine-jquery.js', 'bower_components/angular/angular.js', 'bower_components/angular-mocks/angular-mocks.js', 'bower_components/angular-animate/angular-animate.js', 'bower_components/angular-cookies/angular-cookies.js', 'bower_components/angular-resource/angular-resource.js', 'bower_components/angular-route/angular-route.js', 'bower_components/angular-sanitize/angular-sanitize.js', 'bower_components/angular-touch/angular-touch.js', 'bower_components/angular-bootstrap/ui-bootstrap.js', 'app/scripts/**/*.js', //'test/mock/**/*.js', 'test/spec/**/*.js', 'app/views/*.html' ], // list of files / patterns to exclude exclude: [], // web server port port: 8080, // Start these browsers, currently available: // - Chrome // - ChromeCanary // - Firefox // - Opera // - Safari (only Mac) // - PhantomJS // - IE (only Windows) browsers: [ 'PhantomJS' ], // Which plugins to enable plugins: [ 'karma-phantomjs-launcher', 'karma-jasmine', 'karma-ng-html2js-preprocessor' ], preprocessors: { 'app/views/*.html': 'ng-html2js' }, ngHtml2JsPreprocessor: { stripPrefix: 'app/', moduleName: 'views' }, // Continuous Integration mode // if true, it capture browsers, run tests and exit singleRun: false, colors: true, // level of logging // possible values: LOG_DISABLE || LOG_ERROR || LOG_WARN || LOG_INFO || LOG_DEBUG logLevel: config.LOG_INFO, // Uncomment the following lines if you are using grunt server to run the tests // proxies: { // '/': 'http://localhost:9000/' // }, // URL root prevent conflicts with the site root // urlRoot: '_karma_' }); };