我试图从IntelliJ调试我的angular2业力测试无济于事。我甚至尝试过禁用代码覆盖率。
我的测试中的断点永远不会被击中。
这是我的业力配置:
// Karma configuration file, see link for more information
// https://karma-runner.github.io/0.13/config/configuration-file.html
module.exports = function (config) {
config.set({
basePath: '..',
frameworks: ['jasmine', '@angular/cli'],
plugins: [
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-remap-istanbul'),
require('@angular/cli/plugins/karma')
],
customLaunchers: {
// chrome setup for travis CI using chromium
Chrome_travis_ci: {
base: 'Chrome',
flags: ['--no-sandbox']
}
},
files: [
{pattern: './src/test.ts', watched: false}
],
preprocessors: {
'./src/test.ts': ['@angular/cli']
},
mime: { 'text/x-typescript': ['ts','tsx'] },
remapIstanbulReporter: {
reports: {
html: 'coverage',
lcovonly: './coverage/coverage.lcov'
}
},
angularCli: {
config: './angular-cli.json',
environment: 'dev'
},
reporters: ['progress', 'karma-remap-istanbul'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
singleRun: false
});
};
该应用程序由angular cli构建(它本身依赖于webpack)。
有人可以提出建议吗?
答案 0 :(得分:2)
你使用什么cli版本?该问题可能是由v1.0.0-beta.21中引入的源映射默认值更改引起的:https://github.com/angular/angular-cli/compare/v1.0.0-beta.20-1...v1.0.0-beta.21。
V1.0.0-beta.20-1:
devtool: 'inline-source-map'
V1.0.0-beta.21
devtool: testConfig.sourcemap ? 'inline-source-map' : 'eval',
可以通过在karma.conf.js中添加"sourcemap: true"
来本地修复此问题:
module.exports = function (config) {
config.set({
...
angularCli: {
config: './angular-cli.json',
environment: 'dev',
sourcemap: true
}
...
});
};