分支覆盖率会随测试自动显示在终端:Jest 需 --coverage + text-summary,输出如“Branches: 85.71% (6/7)”;Vitest 需 c8,运行 npx c8 vitest run --coverage 即可显示。

在 JS 单元测试中,分支覆盖率本身不会自动“打印”到控制台,但你可以通过配置测试工具(如 Jest 或 Vitest),让终端在运行测试后明确显示分支覆盖率数值——它会作为覆盖率摘要的一部分出现在命令行输出里。
Jest 中让分支覆盖率出现在控制台
Jest 默认启用 istanbul 覆盖率统计,但分支(Branches)指标需确保覆盖率报告开启,并使用支持的格式:
- 运行命令时加 --coverage:例如
yarn test --coverage或npx jest --coverage - 确保
jest.config.js中启用了coverageReporters,至少包含"text-summary"(这是终端输出精简汇总的关键) - 终端输出中会看到类似这一行:
Branches: 85.71% (6/7) —— 这就是分支覆盖率,带具体分子分母
Vitest 中查看分支覆盖率数值
Vitest 默认不内置覆盖率,推荐搭配 c8(轻量、速度快、原生支持 ESM):
- 安装:
npm install -D c8 - 运行:
npx c8 vitest run --coverage - 终端会直接打印汇总,包括 Lines、Branches、Functions、Statements 四项百分比
- 同时生成 HTML 报告(
coverage/index.html),可点进文件看哪条if、?:或&&分支未覆盖
手动检查分支是否真被触发(调试用)
如果想在某次测试执行中确认某个分支逻辑是否走通,不依赖报告,可临时加断点或日志:
- 在关键分支前插入
console.log('✅ if branch hit')或debugger - 运行单个测试:
npx jest MyComponent.test.js -t "handles empty input",观察控制台输出 - 配合覆盖率 HTML 报告,黄色高亮处即为“部分覆盖分支”,说明该条件判断只走了其中一条路径
不需要额外写代码去“打印分支覆盖率”,只要正确启用覆盖率收集和文本摘要,它就会稳稳出现在你每次 --coverage 的终端输出里。



















