Plu*_*mer 7 code-coverage jestjs create-react-app
使用 create-react-app,在我的 CI 管道中运行测试时,如果未满足代码覆盖率阈值,我希望控制台返回非零响应。
包.json
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"test:coverage": "npm run test -- --coverage --watchAll=false",
},
"jest": {
"collectCoverageFrom": [
"src/components/**/*.js",
"src/state/**/*.js",
"src/templates/**/*.js",
"src/routes/**/*.js"
],
"coverageThreshold": {
"global": {
"branches": 80,
"functions": 80,
"lines": 80,
"statements": 80
}
}
}
Run Code Online (Sandbox Code Playgroud)
运行test:coverage控制台时报告未满足阈值,但仍返回 0。我从 Jest 文档中了解到,当未满足覆盖阈值时,应返回错误。
https://jestjs.io/docs/en/configuration#coveragethreshold-object
具体来说...
If thresholds aren't met, jest will fail.
Run Code Online (Sandbox Code Playgroud)
有人熟悉这个问题吗?我经历过 Jest 和 CRA github 问题,结果喜忧参半,大多数发现都与过时的版本有关。
当命令失败时停止进一步执行:
command || exit 0
{
"test:coverage": "npm run test -- --coverage --watchAll=false || exit 0"
}
Run Code Online (Sandbox Code Playgroud)
参考:如果执行 shell 失败,jenkins 构建不会失败
| 归档时间: |
|
| 查看次数: |
4981 次 |
| 最近记录: |