diff --git a/src/Listener/WebDriverListener.php b/src/Listener/WebDriverListener.php index 17874834..2f81ce07 100644 --- a/src/Listener/WebDriverListener.php +++ b/src/Listener/WebDriverListener.php @@ -5,6 +5,7 @@ use Facebook\WebDriver\Exception\SessionNotCreatedException; use Facebook\WebDriver\Exception\WebDriverException; use Facebook\WebDriver\Remote\DesiredCapabilities; +use Facebook\WebDriver\Remote\WebDriverBrowserType; use Lmc\Steward\ConfigProvider; use Lmc\Steward\Selenium\CapabilitiesResolver; use Lmc\Steward\Test\AbstractTestCase; @@ -122,7 +123,11 @@ public function endTest(Test $test, float $time): void try { $test->wd->close(); - $test->wd->quit(); + // Do not attempt to delete session after browser was closed. Workaround for Geckodriver bug: + // https://github.com/mozilla/geckodriver/issues/732, https://bugzilla.mozilla.org/show_bug.cgi?id=1403510 + if (ConfigProvider::getInstance()->browserName !== WebDriverBrowserType::FIREFOX) { + $test->wd->quit(); + } } catch (WebDriverException $e) { $test->warn('Error closing the session, browser may died.'); } finally {