在独立的分叉子进程中运行测试
pytest-forked的Python项目详细描述
警告
这是XDist分叉模块的提取, 在找到新的维护人员之前,不计划进行超出最低限度的未来维护。
此插件在Windows上不起作用,因为不支持fork。
- --forked:在forked中运行每个测试 生存于SEGFAULTS或以其他方式死亡的进程的子进程。
安装
使用以下命令安装插件:
pip install pytest-forked
或者在develope/in-place模式下使用包 签出pytest-forked repository
pip install -e .
用法示例
如果你有C或C++库的测试,你可能需要处理。 因为测试破坏了整个过程。对于这种情况,你可以使用拳击。 选项:py.test --forked
它将在子进程中运行每个测试并报告 使进程崩溃。您还可以将此选项与 通过pytest xdist运行多个进程以加速测试运行 并使用您的CPU内核:
py.test -n3 --forked
这将并行运行3个测试子进程,每个子进程 为每个测试创建新的分叉子流程。