在不覆盖i的情况下更新覆盖率报告

2024-05-29 09:48:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建覆盖率报告的方法是:

source coverage_setup.sh
setenv COVERAGE_PROCESS_START .coveragerc
myscript.py --f 1
unsetenv COVERAGE_PROCESS_START

设置脚本只是将覆盖模块(3.6.3)添加到PATH,并将PYTHONPATH设置到覆盖模块

我有一个(非python)脚本,可以执行myscript.py次multpul,例如:

myscript.py --f 1
myscript.py --f 2
myscript.py --f 3

我希望每次执行都更新.coveragerc文件,而不是覆盖它。我找不到这样做的旗帜。我还尝试将COVERAGE_PROCESS_START更改为:

source coverage_setup.sh
setenv COVERAGE_PROCESS_START .coveragerc1
myscript.py --f 1
setenv COVERAGE_PROCESS_START .coveragerc2
myscript.py --f 2
setenv COVERAGE_PROCESS_START .coveragerc3
myscript.py --f 3
unsetenv COVERAGE_PROCESS_START

然后合并报告。但是覆盖率报告失败,出现以下错误(执行myscript.py):

Error in sitecustomize; set PYTHONVERBOSE for traceback:
CoverageException: Couldn't read '.coveragerc1' as a config file

有没有办法告诉覆盖率模块更新同一份报告而不是覆盖它? 如果没有,是否有可行的解决办法


Tags: 模块pysource报告shsetupcoverage覆盖率
1条回答
网友
1楼 · 发布于 2024-05-29 09:48:14

首先,如果只是运行Python文件,则不需要覆盖率、进程和启动。这样做:

coverage run myscript.py  f 1

其次,您可以使用 append标志将数据累积到数据文件中,而不是每次运行都重新开始:

coverage run  append myscript.py  f 1

相关问题 更多 >

    热门问题