nyc merge本地与CircleCI环境行为不一致,Cypress覆盖率合并失效
nyc 合并Cypress与Jest代码覆盖率的环境差异问题
- 本地执行流程表现:按照既定步骤操作时,可得到符合预期的合并覆盖率结果,合并后的覆盖率数值略高于两个测试套件单独运行产出的覆盖率
- CircleCI执行表现:运行完全一致的操作步骤时,最终生成的合并报告仅包含Jest的测试结果,未纳入Cypress的覆盖率统计
已完成的排查校验
已通过SSH登录对应故障执行环境逐环节验证,排除以下常见异常原因:
- Cypress测试执行完成后,对应产出的覆盖率文件正常生成,无缺失、损坏问题,目标目录下的
coverage-final.json可正常读取 - 全流程涉及的文件拷贝操作全部执行成功,可正常从
cypress-coverage/、jest-coverage/目录将文件拷贝到reports/目录,无权限不足、路径不存在类报错 - 核对本地与CircleCI环境的nyc版本,二者完全一致,均为15.1.0版本
当前执行的全量操作命令
mkdir -p reports cp jest-coverage/coverage-final.json reports/from-jest.json cp cypress-coverage/coverage-final.json reports/from-cypress.json mkdir -p .nyc_output npx nyc merge reports cp coverage.json .nyc_output/out.json npx nyc report --reporter=lcov --reporter=text --report-dir=reports
内容的提问来源于stack exchange,提问作者macbeccam
相关产品推荐
相关产品推荐

