У меня была существующая сборка с использованием Maven, Karma, PhantomJS и Jasmine, работающих в Windows7, с использованием оболочки Cygwin Bash.Karma/PhantomJS работает в Windows, тот же конфиг на Linux не отправляет сообщения на PhantomJS
Теперь я пытаюсь получить ту же сборку, которая работает на виртуальной машине CentOS, указывая на ту же рабочую область.
Когда я запускаю Karma на виртуальной машине, он запускает Karma и PhantomJS «потому что нет сообщения в 10000 ms». Я попытался увеличить тайм-аут захвата, но это не имело никакого значения.
Есть ли что-то, что я могу сделать, чтобы получить больше диагностических данных, которые могли бы рассказать мне, почему сообщения не доходят до PhantomJS от Karma?
В Windows я использую Karma v0.12.16 и PhantomJS 1.9.7. На VM CentOS я использую Karma v0.12.24 и PhantomJS 1.9.8.
Вот мой "karma.config.js":
module.exports = function(config) {
'use strict';
config.set({
basePath: '../../../..',
frameworks: ['jasmine'],
files: [
"http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js",
"http://code.jquery.com/jquery-migrate-1.2.1.js",
"src/main/webapp/js/libs/jquery.coo.kie.js",
"src/main/webapp/js/libs/jquery.address-1.3.1.js",
"src/main/webapp/js/libs/modernizr-1.6.min.js",
"src/main/webapp/js/libs/underscore.js",
"src/main/webapp/js/mylibs/util.js",
"src/main/webapp/js/mylibs/controller.js",
"src/test/webapp/js/init.js",
"src/main/webapp/js/mylibs/config.js",
"src/main/webapp/js/mylibs/controller.daily.js",
"src/main/webapp/js/mylibs/controller.daily.rate-table.js",
"src/main/webapp/js/mylibs/controller.diagnostic.page.js",
"src/main/webapp/js/mylibs/controller.realtime.matrix-view.js",
"src/main/webapp/js/mylibs/controller.realtime.rate-table.js",
"src/main/webapp/js/mylibs/controller.realtime.subway-map.js",
"src/main/webapp/js/mylibs/data.daily.js",
"src/main/webapp/js/mylibs/data.realtime.js",
"src/main/webapp/js/mylibs/diagnostic.controller.js",
"src/main/webapp/js/mylibs/html.js",
"src/main/webapp/js/mylibs/html.daily.js",
"src/main/webapp/js/mylibs/html.diagnostic.js",
"src/main/webapp/js/mylibs/html.realtime.js",
"src/main/webapp/js/mylibs/html.realtime.matrix-view.js",
"src/main/webapp/js/mylibs/routes.js",
"src/main/webapp/js/mylibs/uverse.config.js",
"src/test/webapp/js/data.daily.test.js",
"http://ajax.googleapis.com/ajax/libs/angularjs/1.2.13/angular.js",
"http://ajax.googleapis.com/ajax/libs/angularjs/1.2.13/angular-resource.js",
"src/test/webapp/js/libs/angular-mocks.js",
"src/main/webapp/js/diag/libs/ui-bootstrap-tpls-0.10.0.js",
"src/main/webapp/js/diag/libs/ng-table.src.js",
"src/main/webapp/js/diag/constants.js",
"src/main/webapp/js/diag/diagapp.js",
"src/main/webapp/js/diag/diagMod.js",
"src/main/webapp/js/diag/dataSourcesMod.js",
"src/main/webapp/js/diag/queriesMod.js",
"src/main/webapp/js/diag/handlersMod.js",
"src/main/webapp/js/diag/workflowMappingsMod.js",
"src/main/webapp/js/diag/configurationMod.js",
"src/main/webapp/js/diag/commonErrorsMod.js",
"src/test/webapp/js/diag/diagapp.test.js"
],
exclude: [
],
plugins:[
'karma-jasmine',
'karma-coverage',
'karma-junit-reporter',
'karma-phantomjs-launcher',
'karma-chrome-launcher',
'karma-firefox-launcher',
'karma-ie-launcher'
],
preprocessors: {
"src/main/webapp/js/mylibs/*.js": 'coverage',
"src/main/webapp/js/diag/*.js": 'coverage',
},
coverageReporter: {
type: "lcov",
dir: "target/karma-coverage"
},
junitReporter: {
outputFile: 'target/surefire-reports/TEST-karma.xml'
},
reporters: ['dots', 'junit'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
captureTimeout: 60000,
singleRun: false
});
};
А вот команда Карма линии я бегу:
karma start /media/sf_Users/<myuid>/workspace2/SunlightGUI/src/test/webapp
/js/karma.conf.js --browsers PhantomJS --reporters dots,junit,coverage
--single-run --no-auto-watch --colors false --log-level info