Currently, the code at \Acquia\BltBehat\Blt\Plugin\Commands\BehatTestCommand::behat() triggers the start and stop of the web driver.
This is great for most cases, since it helps on local running.
I arrived to this place while trying to use the behat testing via lando, using the chrome web driver.
On my local configuration, I am using a local lando service, i.e. an extra container, to run the web browser to be used during behat testing for javascript.
This means that when the logic at \Acquia\Blt\Robo\Commands\Tests\TestsCommandBase::findChrome() is reached, it is unable to find a chrome browser binary, since it is inside a container and not on the default one that is executing the tests.
Proposed resolution
Option 1
One way to work-around this problem, is to have a configuration option that allows skipping to manage the start and stop of the web driver.
Option 2
Another option, is to add a case on findChrome() to handle lando on blt project, but that is probably too specific.
Option 3
A better solution is probably to refactor the idea in blt itself, to add some interaction point, so this behavior can be changed from a blt plugin; say blt-lando; but that is probably too much for introducing the idea.
Problem/Motivation
Currently, the code at
\Acquia\BltBehat\Blt\Plugin\Commands\BehatTestCommand::behat()
triggers the start and stop of the web driver.This is great for most cases, since it helps on local running.
I arrived to this place while trying to use the behat testing via lando, using the chrome web driver. On my local configuration, I am using a local lando service, i.e. an extra container, to run the web browser to be used during behat testing for javascript. This means that when the logic at
\Acquia\Blt\Robo\Commands\Tests\TestsCommandBase::findChrome()
is reached, it is unable to find a chrome browser binary, since it is inside a container and not on the default one that is executing the tests.Proposed resolution
Option 1 One way to work-around this problem, is to have a configuration option that allows skipping to manage the start and stop of the web driver.
Option 2 Another option, is to add a case on
findChrome()
to handle lando on blt project, but that is probably too specific.Option 3 A better solution is probably to refactor the idea in blt itself, to add some interaction point, so this behavior can be changed from a blt plugin; say blt-lando; but that is probably too much for introducing the idea.