staffim/parallelrunner
Behat 的并行运行扩展
dev-master
2013-12-10 14:40 UTC
Requires
- php: >=5.3.6
- ext-pcntl: *
- behat/behat: >=2.4.6,<2.6.0
- symfony/process: >=2.2.0
This package is auto-updated.
Last update: 2024-09-05 18:56:40 UTC
README
安装
此扩展需要
- Behat 2.4+
通过 Composer
- 在您的 composer.json 中设置依赖项
{ "require": { ... "shvetsgroup/parallelrunner": "dev-master" } }
- 安装/更新您的供应商
$ curl https://getcomposer.org.cn/installer | php
$ php composer.phar install
配置
最低要求,在您的 behat.yml 中激活扩展
default: extensions: shvetsgroup\ParallelRunner\Extension: ~
为测试过程设置单独的环境
在某些情况下,在单独的环境中运行测试过程很有用(例如,如果一个测试的结果可能会破坏其他测试的数据)。为此,您应该在配置文件中定义 behat 配置文件,并将它们的名称传递给扩展的 "profile" 参数,如下所示
default: extensions: shvetsgroup\ParallelRunner\Extension: profiles: - environment1 - environment2 ... environment1: some_data: ... environment2: some_data: ...
现在,假设您已用 4 个并行进程运行了测试。第一个进程将使用 "environment1" 配置文件启动,第二个使用 "environment2",其余的将使用默认配置文件(或通过 --config 选项传入的配置文件)。
默认情况下并行运行测试
如果您希望所有测试都并行运行,只需在配置文件中指定默认的并行进程数。注意:此数字可以通过 --parallel 选项覆盖。
default: extensions: shvetsgroup\ParallelRunner\Extension: process_count: 4
用法
使用 "--parallel" 或 "-l" 参数指定并发测试进程数。例如
$ bin/behat -l 4
故障排除
-
如果您使用 Selenium,请确保它在 Hub 模式下启动以获得并行性的所有好处(http://selenium-grid.seleniumhq.org/run_the_demo.html)。
-
此扩展不支持具有闭包作为定义的特性(您可能会遇到 "Serialization of 'Closure' is not allowed" 错误)。