1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
| const path = require('path')
const srcPath = path.resolve(__dirname, '../../src')
module.exports = function(config) {
config.set({
webpack: {
devtool: 'inline-source-map', // 推荐使用inline-source-map
module: {
rules: [
// 像eslint-loader一样使用,并限定在源码上。
{
test: /\.js$/,
enforce: 'pre',
use: 'istanbul-instrumenter-loader',
inclues: [srcPath]
}
/* loaders */
]
}
},
frameworks: ['mocha', 'sinon-chai'], // 测试框架随便一定要要和我一样
files: [
'./index.js' // 推荐使用一个入口来导入所有的测试。
],
preprocessors: {
'./index.js': ['webpack'] // 使用什么配置
},
// 增加代码覆盖率输出插件
reporters: ['spec','coverage-istanbul'],
port: 9876, // 端口
colors: true,
logLevel: config.LOG_INFO,
autoWatch: false,
browsers: ['PhantomJS'],
singleRun: false,
// 配置代码覆盖率插件
coverageIstanbulReporter: {
// 以什么格式, 这里设置了输出 html文件 ,info文件 ,及控制台
reports: ['html', 'lcovonly', 'text-summary'],
// 将文件输出路径定位
dir: path.join(__dirname, 'coverage'),
// 修正 weback 路径(翻译了是这个意思)
fixWebpackSourcePaths: true,
// 将生成的html放到./coverage/html/下
'report-config': {
html: {
subdir: 'html'
}
}
}
})
}
|