Все, что я хочу, это загрузить мои файлы машинописных файлов в отладчик браузера, когда я запускаю модульные тесты с помощью Karma. Если я удалю karma-typescript, тесты будут выполняться, но я могу только отлаживать переданный javascript. С карма-машинописью я получаю вышеуказанную ошибку. Что мне нужно сделать, чтобы отлаживать мои файлы машинописных файлов при использовании кармы?«Ошибка при отсутствии: зона уже загружена». во время теста кармы
Вот мой конфиг кармы, который используется для испытаний.
const conf = require('./gulp.conf');
module.exports = function (config) {
const configuration = {
basePath: '../',
singleRun: false,
autoWatch: true,
logLevel: 'INFO',
junitReporter: {
outputDir: 'test-reports'
},
browsers: [
'Chrome'
],
frameworks: [
'jasmine',
'karma-typescript'
],
files: [
{ pattern: "src/**/*.ts" },
conf.path.src('index.spec.js')
],
preprocessors: {
[conf.path.src('index.spec.js')]: [
'webpack'
],
"**/*.ts": ['karma-typescript']
},
reporters: ['progress', 'coverage', 'karma-typescript'],
coverageReporter: {
type: 'html',
dir: 'coverage/'
},
webpack: require('./webpack-test.conf'),
webpackMiddleware: {
noInfo: true
},
plugins: [
require('karma-jasmine'),
require('karma-junit-reporter'),
require('karma-coverage'),
require('karma-chrome-launcher'),
require('karma-webpack'),
require('karma-typescript')
]
};
config.set(configuration);
};
Вот мой webpack conf, который используется для тестов.
const webpack = require('webpack');
const conf = require('./gulp.conf');
module.exports = {
module: {
loaders: [
{
test: /.json$/,
loaders: [
'json-loader'
]
},
{
test: /.ts$/,
exclude: /node_modules/,
loader: 'tslint-loader',
enforce: 'pre'
},
{
test: /\.ts$/,
exclude: /node_modules/,
loaders: [
'ts-loader'
]
},
{
test: /.html$/,
loaders: [
'html-loader'
]
}
]
},
plugins: [
new webpack.ContextReplacementPlugin(
/angular(\\|\/)core(\\|\/)(esm(\\|\/)src|src)(\\|\/)linker/,
conf.paths.src
),
new webpack.LoaderOptionsPlugin({
options: {
resolve: {},
ts: {
configFileName: 'tsconfig.json'
},
tslint: {
configuration: require('../tslint.json')
}
},
debug: true
}),
new webpack.SourceMapDevToolPlugin({
filename: null,
test: /\.(ts|js)($|\?)/i
})
],
devtool: 'source-map',
resolve: {
extensions: [
'.webpack.js',
'.web.js',
'.js',
'.ts'
]
}
};
Вот мой webpack conf, который используется для запуска приложения.
Пожалуйста, дайте мне знать, какую еще информацию или код вы бы хотели.
Я столкнулся с той же проблемой, которая пыталась перейти на @ angular/cli 1.0.0-rc.0 (from 1.0.0-beta.26) – eddygeek