2017-11-20 7 views
0

나는 도커로 3 개의 이미지 (webserver, dbselenium)를 작성했습니다.Laravel dusk + docker-compose + selenium + firefox : 정의되지 않은 색인 요소

위로 웹 서버에 들어가서 php artisan dusk을 실행하십시오.

내 앱은 에 Welcome을 반환하는 간단한 https 페이지입니다. 하지만 ErrorException: Undefined index: ELEMENT이 있습니다.

셀레늄 image: selenium/standalone-firefox.

test: 
... 
$this->browse(function (Browser $browser) use ($user) { 
    $browser 
    ->visit('/home') 
    ->assertSee('Welcome'); 
}); 


DuskTestCase.php 
... 
protected function driver() { 
    return RemoteWebDriver::create(
    'http://selenium:4444/wd/hub', DesiredCapabilities::firefox()->setCapability(
     'acceptInsecureCerts', true 
    ) 
); 
} 

답변

0

이것은 geckodriver과 셀레늄 간의 비 호환성 때문입니다 :

https://github.com/facebook/php-webdriver/issues/492

는 파이어 폭스와 셀레늄의 경우에는 셀레늄 기능에 enablePassThrough=false를 추가해야합니다. 같은

뭔가 :

protected function driver() { 
    return RemoteWebDriver::create(
    'http://selenium:4444/wd/hub', DesiredCapabilities::firefox() 
     ->setCapability('acceptInsecureCerts', true) 
     ->setCapability('enablePassThrough', false) 
); 
} 

트릭을 할 아마도합니다.