我有一个可用的 Karma 设置,使用 Webpack。每当我修改测试文件或其任何依赖项时,所有测试都会运行。这一切都很好,但我真的很喜欢它只运行最少数量的测试。如果我更改测试文件,它应该只运行该测试文件。如果我更改源文件,它应该运行任何具有该源文件作为依赖项的测试文件(通过require)。
这是我的相关部分karma.config.js:
files: [
{
pattern: '**/*.test.js',
watched: true,
included: true,
served: true
},
],
preprocessors: {
'**/*.test.js': ['webpack']
},
webpack: {
resolve: {
root: path.join(__dirname, '..', 'webpack'),
extensions: ['', '.js', '.jsx'],
},
module: {
loaders: [
{
test: /.jsx?$/,
loader: 'babel-loader',
exclude: [/node_modules/],
query: {
presets: ['es2015', 'react']
}
},
]
},
},
Run Code Online (Sandbox Code Playgroud)
完整的karma.config.js文件在 gist 中。
我熟悉其他问题中提到的解决方案,包括process.env.npm_config_single_file,但这不是我想要做的。
根据我上面的配置,我希望它将每个文件作为单独的 webpack 处理,这也由 …
我有两个环境,我正在运行我的测试(本地和travic ci).如果我在本地运行它,我需要在测试中做一些调整.
是否可以使用Karma而不使用两个单独的配置文件?
karma-runner ×2