Beat와 Mink를 사용하여 Laravel 프레임 워크를 사용하는 응용 프로그램을 테스트하고 있으므로 Artisan을 사용하여 테스트를 실행하기 전에 데이터베이스를 설정하려고합니다.Behat @BeforeSuite에서 base_url 가져 오기
Artisan을 올바르게 구성하려면 테스트 할 도메인을 알아야하며 따라서 Laravel 환경을 사용해야합니다. 이것은 사용중인 다양한 프로파일 아래 behat.yml에 나열되어 있습니다. 예 :
default:
extensions:
Behat\MinkExtension\Extension:
base_url: http://www.example.com
...
daniel:
extensions:
Behat\MinkExtension\Extension:
base_url: http://example.dev
@BeforeSuite에서 base_url 값을 가져올 수 있습니까?
여기에서 가장 큰 문제는 @BeforeSuite가 정적이어야하고 따라서 밍크에 액세스 할 수 없어서 $this->getMinkParameter('base_url')
일 수는 없다는 것입니다.
$suiteEvent->getContextParameters()
으로 매개 변수에 액세스 할 수 있으므로 URL을 복제 할 수 있지만 클리너 솔루션이 있습니다.
이 완벽했다. Artisan/Laravel 전체 답변을 여기에 넣을 수는 없지만 관심있는 사람에게는이 대답과이 질문에 대한 내 이전 답변의 조합이 될 것입니다. http://stackoverflow.com/questions/24643449/laravel-4 -2-artisancall-ignoring-env-option/26425714 # 26425714 – DanielM
다음은 모두 함께 사용할 때 어떻게 작동하는지 대략적인 요지입니다. https://gist.github.com/Gisleburt/62ce3507eb792c42dfae – DanielM