我使用mocha-webpack来为反应项目运行我的测试。我不仅在调用mocha中指定babel的原因是我有jsx引用svg文件,当我这样做时会爆炸。 mocha-webpack工作正常。但我无法与伊斯坦布尔合作。我用bable-istanbul-loader替换了babel-loader,编译并执行测试,但它不会在任何地方输出coverage文件夹。
此外,babel-istanbul似乎想要使用业力,但我不会因为我在浏览器中进行测试而使用业力。
loader看起来像这样:
{
test: /\.jsx?$/,
exclude: /node_modules/,
loader: 'babel-istanbul'
},
package.config说
"test": "mocha-webpack --webpack-config ./app/webpack.config-testing.js",
答案 0 :(得分:1)
我有一些工作,使用nyc(伊斯坦布尔命令行)。我删除了一些文件名并更改了一些数据以使其成为通用名称。我在这里找到了如何做到这一点:https://github.com/zinserjan/mocha-webpack/issues/19
nyc mocha-webpack <testfile> "$@" --colors --webpack-config webpack.config.js --require scripts/mocha-jsdom-setup.js
<Some React Component />
✓ should render the props1
✓ should render the props2
✓ should render the props 3
3 passing (29ms)
---------------------------------|----------|----------|----------|----------|----------------|
File | % Stmts | % Branch | % Funcs | % Lines |Uncovered Lines |
---------------------------------|----------|----------|----------|----------|----------------|
All files | 70.14 | 12.43 | 91.76 | 71.37 | |
<something> | 100 | 50 | 100 | 100 | |
<something> | 100 | 50 | 100 | 100 | |
<something> | 100 | 50 | 100 | 100 | |
<something>| 69.57 | 10.53 | 91.75 | 70.82 | |
<something> | 69.57 | 10.53 | 91.75 | 70.82 |84 |
<something> | 100 | 100 | 100 | 100 | |
<something> | 100 | 100 | 100 | 100 | |
---------------------------------|----------|----------|----------|----------|----------------|