python - 使用 pytest-cov 和 subprocess.Popen 进行覆盖测试
问题描述
如何使用 Popen 测试具有多个进程的应用程序,收集所有进程的覆盖率?
pytest-cov 文档仅涵盖多处理模块,而不是子进程。 https://pytest-cov.readthedocs.io/en/latest/subprocess-support.html
我的应用程序使用 Popen 来启动自身的新副本。所有孩子都被 SIGTERMed (被处理以便他们正常退出),然后由他们的父母等待。但是,覆盖率报告显示第一个子级在调用 Popen(显示为红色)之前执行了一些行,而孙子级则显示了一些行。我怀疑覆盖率报告文件可能会被多个进程覆盖。没有简单的测试用例,抱歉。
解决方案
推荐阅读
- google-bigquery - 如何更改数据集名称
- arrays - 查找两个数组之间差异的最简单方法
- javascript - 全屏时如何在 Plyr(html5 视频播放器)上显示叠加层?
- swift - 如何在 iVar 数组上使用 inout?
- r - 第一个和第二个“_”之间的正则表达式
- javascript - 超出网站内容页脚的代码
- elasticsearch - 无法在 ubuntu 上的 kubernetes 集群中创建 fluentd 容器
- algorithm - 组合冲突选项的实用方法
- python - PyQt5 QTableWidget 信号连接器调用了两次
- square - 确认支付表单库已加载