0

Issue

I have a very large testing suite built for a large scale application.

The suite includes upwards of twenty different JS spec files that run through hundreds of tests for said application. It has gotten to a point where Jasmine (run via Grunt watch) cannot run through all of the tests without throwing a "Warning: undefined Use --force to continue" message.

If I run the SpecRunner.html file, all of the tests pass and there is no additional information there even though PhantomJS says more info can be found there.

Is there some sort of limit to the number of tests one can write??

I am using grunt v. ^0.4.5 and grunt-contrib-jasmin v. ~0.6.3.

enter image description here

Gruntfile.js

module.exports = function(grunt) {
    // Project configuration. Can be any arbitrary data.
    // Things you might want to <% %> include in tasks.
    // These data can be accessed by grunt.config.<property>
    // Taksa are also configured here taking the format:
    // <taskname>: { <target1>: {}, <target2>: {} }

    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        js: {
            lib: [
                'PriceAnalytics.Web/Scripts/lib/jquery/*.min.js', // jquery needs to be loaded before bootstrap
                'PriceAnalytics.Web/Scripts/lib/bootstrap/bootstrap.min.js',
                'PriceAnalytics.Web/Scripts/lib/knockout/knockout*.js',
                'PriceAnalytics.Web/Scripts/lib/underscore/underscore.min.js',
                'PriceAnalytics.Web/Scripts/lib/underscore/underscore.mixin.deepExtend.js',
                'PriceAnalytics.Web/Scripts/lib/globalize/globalize.js',
                'PriceAnalytics.Web/Scripts/lib/highcharts/highcharts.js'
            ],
            src: 'PriceAnalytics.Web/Scripts/src/**/*.js',
            spec: 'PriceAnalytics.Web.Test/spec/**/*.js'
        },

        jasmine: {
            src: '<%= js.src %>',
            options: {
                specs: '<%= js.spec %>',
                vendor: '<%= js.lib %>',
                //display: 'short',
                summary: true
                //keepRunner: true  could probably leverage this option so that we don't have to manually maintain teh specrunner script tags
            }
        },

        watch: {
            gruntfile: {
                files: '<%= jshint.gruntfile.src %>',
                tasks: ['jshint:gruntfile']
            },
            src_spec: {
                files: '<%= jshint.src_spec.src %>',
                tasks: ['jshint:src_spec', 'jasmine']
            }
        }
    });

    // Load the plugins
    grunt.loadNpmTasks('grunt-contrib-jasmine');
    grunt.loadNpmTasks('grunt-contrib-watch');

    // Default task(s)
    grunt.registerTask('default', ['jasmine']);
};
ascendantofrain
  • 302
  • 6
  • 16

1 Answers1

0

Turns out there was a bug in our application's code that was throwing an error from a try/catch thus causing the tests to fail/not run.

ascendantofrain
  • 302
  • 6
  • 16