When performing tests, karma seems to duplicate the last test several times, the number of times duplicated seems to depend on the number of tests and browsers that are used to run.
If you use only one browser (PhantomJS or Chrome) for one test, the test is displayed twice, with both browsers the same single test is displayed up to 6 times.
I added registration to the test, the log occurs once per test for each browser, so, apparently, the tests work correctly, but simply duplicate the results shown.
karma.conf.js
module.exports = function(config) { config.set({ // base path that will be used to resolve all patterns (eg. files, exclude) basePath: '', // frameworks to use // available frameworks: https://npmjs.org/browse/keyword/karma-adapter frameworks: ['jasmine'], // list of files / patterns to load in the browser files: [ '_test/test.js' ], // list of files to exclude exclude: [ ], // preprocess matching files before serving them to the browser // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor preprocessors: { }, // test results reporter to use // possible values: 'dots', 'progress' // available reporters: https://npmjs.org/browse/keyword/karma-reporter reporters: ['progress'], // web server port port: 9876, // 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_INFO, // enable / disable watching file and executing tests whenever any file changes autoWatch: true, // start these browsers // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher browsers: ['PhantomJS', 'Chrome'], // Continuous Integration mode // if true, Karma captures browsers, runs the tests and exits singleRun: false }) }
test.js
describe('karma testing', function () { it('tests karma is working', function () { expect(true).toBe(true); console.log('test1'); }); });
Exit 1 Browser (Chrome)
07 10 2015 16:41:14.890:INFO [karma]: Karma v0.13.10 server started at http://localhost:9876/ 07 10 2015 16:41:14.897:INFO [launcher]: Starting browser Chrome 07 10 2015 16:41:16.364:INFO [Chrome 45.0.2454 (Windows 7 0.0.0)]: Connected on socket 0uvPocfSI0prGxwdAAAA with id 29520633 LOG: 'test1' Chrome 45.0.2454 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0 secs / 0.003 secs Chrome 45.0.2454 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0.011 secs / 0.003 secs)
Conclusion 2 Browsers (PhantomJS, Chrome)
07 10 2015 16:27:31.399:INFO [karma]: Karma v0.13.10 server started at http://localhost:9876/ 07 10 2015 16:27:31.407:INFO [launcher]: Starting browser PhantomJS 07 10 2015 16:27:31.420:INFO [launcher]: Starting browser Chrome 07 10 2015 16:27:32.886:INFO [PhantomJS 1.9.8 (Windows 7 0.0.0)]: Connected on socket P5focoe7004aPX1rAAAA with id 49258591 07 10 2015 16:27:33.077:INFO [Chrome 45.0.2454 (Windows 7 0.0.0)]: Connected on socket BGtRdqevRGGXZTA-AAAB with id 42323971 LOG: 'test1' PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0 secs / 0.003 secs) PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0.007 secs / 0.003 s PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0.007 secs / 0.003 s Chrome 45.0.2454 (Windows 7 0.0.0) LOG: 'test1' PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0.007 secs / 0.003 s PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0.007 secs / 0.003 secs) PhantomJS 1.9.8 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0.007 secs / 0.003 secs) Chrome 45.0.2454 (Windows 7 0.0.0): Executed 1 of 1 SUCCESS (0.028 secs / 0.002 secs) TOTAL: 2 SUCCESS
I tested this with and without karma-kli, and the results were the same.
I looked at the stack and google overflow, and some people seem to have encountered similar problems, but there are no meaningful answers.