当从另一个目录运行所测脚本时,这是一个相对路径使覆盖范围混乱的问题。Coverage结果文件最终位于该目录中,而不是项目的根目录中。
为了解决这个问题,我停止使用
pytest-cov,
coverage而是改用pure 。在相关的地方,我使用完整路径而不是相对路径。
因此,例如,通过定义启用子流程覆盖所需的环境变量
exportCOVERAGE_PROCESS_START=/full/path/to/.coveragerc。在中
.coveragerc,覆盖范围结果文件通过指定
[run] data_file = /full/path/to/.coverage
并且any
--source和
--includeoptions也应该使用完整路径。这样就有可能获得正确的覆盖率测量。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)