Мы создали наше приложение с использованием библиотеки UI5 и написали для них тесты на жасмине.У нас есть трудности в получении покрытия для этих файлов JavaScript.
Структура проекта: В настоящее время структура нашего проекта состоит из типичной модели, вида, структуры контроллера.У нас есть около 1000 файлов в разных иерархиях.
Проблема под рукой: Я пытаюсь получить освещение для этого проекта и пробую карму для этого.При стандартной конфигурации кармы я запустил тесты.Тесты провалились, и на основании логов я мог видеть, что карма ожидает, что все файлы в проекте будут перечислены в порядке их зависимостей.Это было бы чрезвычайно сложно для меня, так как количество файлов огромно.
Вопросы:
Правильно ли я понимаю Карму?Является ли предоставление всех файлов в порядке их зависимости единственным способом?
Кто-нибудь знает какое-либо альтернативное решение или альтернативную библиотеку, где я могу получить покрытие для своих файлов javascript?
Полная версия karma.config.js
module.exports = function (config) {
config.set({
basePath: '',
frameworks: ['jasmine', 'openui5'],
openui5: {
path: "https://sapui5.hana.ondemand.com/resources/sap-ui-core.js",
useMockServer: false
},
client: {
openui5: {
config: {
theme: 'sap_bluecrystal',
libs: 'sap.m,sap.bpm',
resourceRoots: {
"sap.bpm": "base/target/appresources/com/sap/bpm",
}
}
}
},
files: [
'src/**/*.js' , 'test/**/*.js'
],
preprocessors: {
'test/**/*.js': ['coverage']
},
captureTimeout: 210000,
browserDisconnectTolerance: 3,
browserDisconnectTimeout: 210000,
browserNoActivityTimeout: 210000,
plugins: [
'karma-jasmine',
'karma-coverage',
'karma-chrome-launcher',
'karma-openui5',
'karma-requirejs'
],
reporters: ['progress', 'coverage'],
port: 9878,
colors: true,
logLevel: config.LOG_DEBUG,
autowatch: false,
browsers: ['Chrome'],
singleRun: true,
concurrency: Infinity,
coverageReporter: {
includeAllSources: true,
dir: 'coverage/',
reporters: [
{ type: "html", subdir: "html" },
{ type: 'text-summary' }
]
}
});
};