This project及其随附的blog post演示了如何在React.js中使用Karma,但是当您运行npm run test
时,Karma会很快打开浏览器并以几乎同样的速度关闭它,不允许您调试应用程序(它应该这样做)。我将配置更改为singleRun: false
,认为可能是singleRun
关闭了应用程序。
我还添加了autoWatch: true
,希望它可以使测试结果可见,但这也不起作用。
问题:如何使 karma 保持浏览器打开足够长的时间,以查看测试结果并调试应用程序?
这是karma.config.js文件
var webpack = require('webpack');
module.exports = function (config) {
config.set({
// browsers: [ process.env.CONTINUOUS_INTEGRATION ? 'Firefox' : 'Chrome' ],
browsers: [ 'Chrome' ],
singleRun: true,
// autoWatch: true,
frameworks: [ 'mocha' ],
files: [
'tests.webpack.js'
],
preprocessors: {
'tests.webpack.js': [ 'webpack', 'sourcemap' ]
},
reporters: [ 'dots' ],
webpack: {
devtool: 'inline-source-map',
module: {
loaders: [
{ test: /\.js$/, loader: 'babel-loader' }
]
}
},
webpackServer: {
noInfo: true
}
});
};
最佳答案
引用official docs时,Karma配置文件的默认名称为karma.conf.js
,请确保正确命名您的名称。
关于打开浏览器窗口的问题,我遇到了类似的问题,我的解决方案是直接使用--auto-watch
标志运行Karma。尝试使用$ karma start --auto-watch
而不是$ npm run test
(确保已通过karma-cli
全局安装了$ npm install -g karma-cli
)。
您还应该在scripts:
文件中 check out package.json
配置部分。可能在此处指定了一些强制选项。
关于karma-runner - 让Karma保持浏览器和测试结果打开更长的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31632191/