2013-08-21 3 views
21

Ho avuto karma in esecuzione utilizzando grunt sulla mia applicazione, ma, per qualche motivo, le cose hanno smesso di funzionare. Ho aggiornato il karma con una reinstallazione, che è cambiata molto e ho cambiato il mio file di configurazione. Tutti i miei file vengono aggiunti e pubblicati, tuttavia non sta eseguendo nessuno dei miei test.Test Karma non in esecuzione

Per il momento (solo per tentare di far funzionare di nuovo), sto correndo fuori dal grunt, usando il comando karma start <pathtomyconfigfile>. Utilizzando l'opzione LOG_DEBUG, sto vedendo tutto aggiunto e servito.

Questo è il mio file di configurazione:

module.exports = function(config) { 
config.set({ 

    // base path, that will be used to resolve files and exclude 
    basePath: '', 


    // frameworks to use 
    frameworks: ['jasmine'], 


    // list of files/patterns to load in the browser 
    files: [ 
     '../build/angular/angular.js', 
     '../build/angular/angular-mocks.js', 
     '../build/angular/angular-resource.js', 
     '../build/angular/angular-cookies.js', 
     '../build/angular/angular-scenario.js', 
     '../src/**/*.js', 
     '../dist/tmp/**/*.js', 
     '../vendor/angular-bootstrap/*.js', 
     '../vendor/angular-ui-utils/modules/route/*.js', 
     '../vendor/angular-ui-utils/modules/mask/*.js' 
    ], 


    // list of files to exclude 
    exclude: [ 

    ], 


    // test results reporter to use 
    // possible values: 'dots', 'progress', 'junit', 'growl', 'coverage' 
    reporters: ['progress'], 


    // web server port 
    port: 9018, 


    // enable/disable colors in the output (reporters and logs) 
    colors: true, 


    // level of logging 
    // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG 
    logLevel: config.LOG_DEBUG, 


    // enable/disable watching file and executing tests whenever any file changes 
    autoWatch: true, 


    // Start these browsers, currently available: 
    // - Chrome 
    // - ChromeCanary 
    // - Firefox 
    // - Opera 
    // - Safari (only Mac) 
    // - PhantomJS 
    // - IE (only Windows) 
    browsers: ['Chrome'],//nothing so we can start it on our own 


    // If browser does not capture in given timeout [ms], kill it 
    captureTimeout: 60000, 


    // Continuous Integration mode 
    // if true, it capture browsers, run tests and exit 
    singleRun: false 
}); 
}; 

Sono ad una perdita qui, corse su diversi browser, modificando i file guardavano, commutata tra il vecchio modo di caricare quadri all'interno della variabile file per il quadro variabile ... Qualsiasi aiuto sarà molto apprezzato. Grazie!

Ulteriori informazioni

Sembra anche che il mio karma è erroring con nessun informazioni diverse da quelle di errore:

INFO [karma]: Karma v0.10.1 server started at http://localhost:9018/ 
INFO [launcher]: Starting browser Chrome 
INFO [Chrome 28.0.1500 (Mac OS X 10.7.4)]: Connected on socket id sidUjYbbZINjGB_6wS6M 
Chrome 28.0.1500 (Mac OS X 10.7.4): Executed 0 of 0 ERROR (0.777 secs/0 secs) 
+0

dove si trovano i test? sono nidificati da qualche parte in "../src/**/*.js"? – UnicodeSnowman

+0

sì, vengono tutti pubblicati nel browser (annotati guardando le linee di debug). – jbenowitz

+0

solo per isolare le cose, sei in grado di fare un iit su un singolo test "garantito-pass" e farlo funzionare? aspettarsi (vero) .toBe (vero) o qualcosa di simile? – UnicodeSnowman

risposta

42

Se si utilizza angolare scenario, rimuovere angular-scenario.js dal file di configurazione e vedere se questo aiuta.

+0

holy hool, grazie – Nick

+1

(+1) poiché si tratta di una risoluzione comune a questo tipo di problema. – Cody

4

Ho passato solo un paio d'ore su questo problema da solo. Ho scoperto che stavo usando karma 0.10.3 e il passaggio a 0.10.2 ha risolto il problema.

Provare npm install [email protected] e vedere se questo risolve qualsiasi cosa!

Assicurarsi inoltre che autoWatch sia impostato su true nella configurazione.

+1

L'impostazione di autoWatch su "true" ha risolto il problema per me. Come si eseguono i test se autoWatch è impostato su false? Le prove non dovrebbero essere eseguite ogni volta che avvio Karma? – seangwright

+0

Commento tardivo per chiunque sia inciampato qui: per una volta l'esecuzione del test all'avvio di karma, usa 'singleRun: true'. autoWatch può essere falso in questo caso. – Kelo

+0

La domanda è cosa è stato aggiunto a 0.10.3 che ha impedito al karma di eseguire i test? – Willa