我跟着这个博客作为一个例子并阅读平行跑者信息。当我打电话时bin/behat
命令后,将打开一个浏览器窗口并使用以下设置成功运行所有测试。
symfony/behat.yml
default:
context:
class: Site\CommonBundle\Features\Context\FeatureContext
extensions:
Behat\Symfony2Extension\Extension:
mink_driver: true
kernel:
env: test
debug: true
Behat\MinkExtension\Extension:
base_url: 'http://symfony.local/app_test.php/'
javascript_session: selenium2
browser_name: firefox
goutte: ~
selenium2: ~
paths:
features: %behat.paths.base%/src
bootstrap: %behat.paths.features%/Context
我修改了 behay.yml (如下所示)以在一个浏览器窗口中运行一些测试,并在另一个窗口中运行一些测试,但它并没有这样做。它的作用是,它打开两个浏览器窗口,但它们都运行相同的测试!我怎样才能克服这个问题?
symfony/behat.yml
default:
context:
class: Site\CommonBundle\Features\Context\FeatureContext
parameters:
output_path: %behat.paths.base%/build/behat/output/
screen_shot_path: %behat.paths.base%/build/behat/screenshot/
extensions:
Behat\Symfony2Extension\Extension:
mink_driver: true
kernel:
env: test
debug: true
Behat\MinkExtension\Extension:
base_url: 'http://symfony.local/app_test.php/'
files_path: %behat.paths.base%/build/dummy/
javascript_session: selenium2
browser_name: firefox
goutte: ~
selenium2: ~
shvetsgroup\ParallelRunner\Extension:
process_count: 2
paths:
features: %behat.paths.base%/src
bootstrap: %behat.paths.features%/Context
F1:
filters:
tags: "@backend"
F2:
filters:
tags: "@frontend"
行为测试:
这应该在一个窗口中运行:
@frontend
Feature: User Login
@javascript
Scenario: I can login to the system
Given I am on "/login"
And I login as "user"
这应该在另一个窗口中运行:
@backend
Feature: Admin Login
@javascript
Scenario: I can login to the system
Given I am on "/login"
And I login as "admin"
我使用 GNU Parallel 和 xargs 设置并行测试执行。
还对所有已执行的功能实施综合报告。
详细信息请参阅我的文章:
http://parallelandvisualtestingwithbehat.blogspot.com/p/blog-page.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)