Pytest测试框架的分布式测试计划器插件。
pytest-cloud的Python项目详细描述
Pytest测试框架的分布式测试计划器插件
安装pytest云
pip install pytest-cloud
功能
该插件提供了在多个测试节点(从节点)之间运行测试的简单方法。 为实际的分布式运行使用伟大的 pytest xdist 插件。 使用时,它将自动检测给定节点的能力,并仅运行其所属的测试进程数 能够处理。if还将筛选出脱机节点或未能响应 能力获取呼叫。
支持到测试节点的自动代码基传播,因此不必安装python依赖项 对于全局远程测试节点上的项目-只需确保virtualenv文件夹位于 内部 你的项目文件夹-这是一个要求。 它还将检测测试环境的根文件夹(project root),并将 rsync 它发送到所有测试节点。
仅支持ATM ssh传输。因此,请确保至少对测试节点启用了公钥身份验证 从主节点(执行py.test的节点)。
命令行选项
-
–云节点
要对其运行测试的节点主机名(或用户主机名)。允许多重。
< DL> -
–云节点
要对其运行测试的节点主机名(或用户主机名)的空间分隔列表。允许多重。
< DL> - –云蟒蛇
- 要在远程测试节点上使用的可选python可执行文件名。 默认值是用于在主机上运行测试的可执行文件名。
- –云计算
- 在远程测试节点上用作同步文件和运行测试的目标文件夹的可选相对路径。 默认为 pytest<;username>;\lt;当前文件夹名>;
- –云虚拟路径
- 远程测试节点上要使用的virtualenv的可选相对路径。默认情况下,它将尝试检测 当前测试进程是否正在使用virtualenv,以及它是否位于当前目录中。如果那是 在这种情况下,它将用于远程节点上的rsync。
- 测试过程大致需要的可选内存量(兆字节)。 将用于计算每个节点的测试进程数量,获取可用内存,将其除以内存 每个进程需要,并获取该值的最小值和测试节点的CPU核心数。
- –云最大进程
- 每个测试节点的可选最大进程数。从计算数字上方覆盖 使用内存和CPU核数的进程。
- –云rsync带宽限制
- 每个rsync进程的可选带宽限制,单位为千字节/秒。默认为5000。
- –云rsync max进程
- rsync进程的可选进程计数限制。默认情况下没有限制,因此rsyncing将是并行的 对于所有测试节点。
INI文件选项
- 云开发鸡蛋
- 要在远程端以开发模式安装的python包路径的可选列表。必须在 项目根目录。
示例
py.test tests/ --cloud-node=10.0.120.{1..40} --cloud-mem-per-process=1000 --rsyncdir=.
或者,如果将节点列表作为空格分隔列表传递:
py.test tests/ --cloud-nodes='10.0.120.1 10.0.120.2' --cloud-mem-per-process=1000 --rsyncdir=.
联系人
如果您有问题、错误报告、建议等,请在 github项目页面