예를 들어 this blog에이어서 ParallerRunner 정보를 읽습니다. bin/behat
명령을 호출하면 하나의 브라우저 창이 열리고 아래 설정으로 모든 테스트가 성공적으로 실행됩니다.동시 실행 테스트 (두 개의 브라우저 창에서)
심포니/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를 수정, 그러나 그것은 그렇게하지 않고, 하나 개의 브라우저 창을 다른 창에서 일부에서 몇 가지 테스트를 실행하려면 . 그것이하는 일은 두 개의 브라우저 창을 열지 만 모두 동일한 테스트를 실행합니다! 이 문제를 어떻게 극복 할 수 있습니까?
심포니/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"
BEHAT 테스트 :
이 하나 개의 창에서 실행해야합니다
@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"
나는 어제 이것을 보았지만 이전에 병렬 테스트를 다뤘다. 나는이 이론을 읽었으며 나에게 문제가되는 것처럼 보인다. 각 프로세스마다 데이터베이스와 서버 셋업이 필요하기 때문이다. 당신의 경우에 해당되는지는 모르지만 대부분의 상황에서는 사실이다. 흥미로운 질문입니다. 그 대답을보고 싶습니다. –
@IanBytchek - 걱정할 필요가 없습니다. 나는 앉아서 기다릴 것이다. 이것이 가능하지 않다면 가까운 장래에 테스트 스위트가 끝날 때까지 오랜 시간 기다려야 할 필요가 없으므로 가까운 장래에 가능해야합니다. 어쨌든 ParallelRunner [적극적으로 개발되지 않음] (https://github.com/shvetsgroup/ParallelRunner/issues/28)처럼 들립니다. – BentCoder
그 사이에 Behat 3으로 업그레이드 할 수 있습니다. 아마도 운이 좋을까요? :) 평행 화는 대단한 일입니다. Behat은 테스트를 실행하는 데 걸리는 시간을 내 신경을 죽입니다. 고통을 완전히 공유하십시오. –