You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行多组Racket测试时raco cover生成的覆盖率报告被覆盖,如何合并?

Racket cover工具多轮覆盖率报告合并方案

方案1:单次执行全量目标文件(推荐)

你可以在一次raco cover命令中传入所有需要统计覆盖率的文件,工具会自动合并所有执行路径的覆盖率数据,生成包含所有文件、共享依赖全量覆盖信息的报告,不会出现数据覆盖问题:

raco cover hello.rkt bye.rkt

方案2:分批次执行后合并数据

如果测试必须分批次运行(比如运行环境有差异、用例执行条件冲突),可以通过导出+合并原始覆盖率数据的方式实现:

  • 执行第一批测试,导出覆盖率原始数据到独立文件,不生成HTML报告:
    raco cover --dump coverage-hello.dat hello.rkt
    
  • 执行第二批测试,同样导出独立的原始数据文件:
    raco cover --dump coverage-bye.dat bye.rkt
    
  • 合并所有原始数据文件,生成统一的覆盖率报告:
    raco cover --merge coverage-hello.dat --merge coverage-bye.dat
    

注意事项

  • 合并操作会自动叠加多轮执行命中的代码路径,共享依赖的覆盖率会统计所有批次的执行结果,最终生成的index.html会包含所有涉及文件的覆盖率信息
  • 如果需要合并更多批次的覆盖率,只需要每批次导出独立的dat文件,合并时通过多个--merge参数传入所有dat文件即可

内容的提问来源于stack exchange,提问作者Alex028502

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 06:27:03