跳转到主要内容

在独立的子进程中运行测试

项目描述

此插件 不适用于Windows,因为没有fork支持。

  • --forked:在每个测试中运行一个被分叉的子进程以应对SEGFAULTS或其他意外终止的进程。

python version ci pre-commit black

安装

使用以下命令安装插件

pip install pytest-forked

或者使用包在开发/就地模式下,并通过pytest-forked存储库的检出

pip install -e .

使用示例

如果你有涉及C或C++库的测试,你可能需要处理导致进程崩溃的测试。在这种情况下,你可以使用包装选项

pytest --forked

这将在每个子进程中运行每个测试,并报告是否有测试导致进程崩溃。你还可以结合pytest-xdist运行多个进程,以加快测试运行并使用你的CPU核心

pytest -n3 --forked

这将并行运行3个测试子进程,每个子进程为每个测试创建新的分叉子进程。

你也可以为单个测试分叉

@pytest.mark.forked
def test_with_leaky_state():
    run_some_monkey_patches()

此测试将无条件地被包装,无论CLI标志如何。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

pytest-forked-1.6.0.tar.gz (10.0 kB 查看散列)

上传时间

构建分布

pytest_forked-1.6.0-py3-none-any.whl (4.9 kB 查看散列)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面