DevEd 85.0.b9 Debian 10 : always starts in "Browser in under remote control" mode after using Selenium

Hello,
On two different debian installation, after starting testing automation with selenium (with php), using a dedicated new profile (and using this new one with selenium), FxDevEd starts always in remote control mode (robot icon, orange color for navbar).
Switching profiles does not change anything, impossible to start correctly.

Best
John

That doesn’t sound good.

There are basically two things that can cause test automation to be enabled: either Firefox is started with the --marionette command line flag, or the marionette.enabled pref is set.

Can you check in about:config whether the pref is set and if so unset it? I guess it’s also worth checking however you are launching Firefox to ensure it’s not passing unexpected command line options.

That was it… marionette.enabled was true.

Ok, when testing again, I found that trying to set firefox binary to my installation path of DevEd did not work at all and trying to use a DevEd fresh profile…

$capabilitites = DesiredCapabilities::firefox();
$capabilitites->setCapability('firefox_binary', '/opt/firefox-dev/firefox');
$capabilitites->setCapability('moz:firefoxOptions', ['args' => ['-profile', '/home/john/.mozilla/firefox/5way8fyp.automation']]);
self::$driver = RemoteWebDriver::create(self::$serverUrl, $capabilitites);

leads to this line at the end of the test
self::$driver->quit();

to cause some problems…
The window did not close at all and I must closed it manually causing a
Process unexpectedly closed with status 0

That does not reset marionette.enabled to false…

Well, after some experimentations, (ex trying to load a WebExtension…)
I’m facing a lot more difficulties than expected…
hard to use Firefox for testing with Selenium. :frowning:

Thx for the tip…

Best

John

With geckodriver we generally make a copy of the specified profile to not cause any side-effects. You should see it when having trace logs enabled. But this is not happening when you specify a profile path via args directly. Is there a reason why you want to use an already existent profile on disk, and don’t let geckodriver create a new one, or pass-in a base64 encoded one?

Also the browser will always close at the end if Quit is really called. It would be the first time we hear about that. As such it would be great to see a trace log attache, also regarding your webextension issues.

Best,
Henrik

Hello Henrik,

The only reason I try to use an existing profile, is that I failed to launch an extension with Firefox. Neither a local packed xpi, neither my local code directly.
For what I understand (and found on the web), Fx seems to be only capable of using an old model with an rds file… not the new WebExtension model.

So, I imagine another solution : using the alternate channel to publish my extension, an install it on a specific Fx profile and use this one with Selenium.
Before scripting all this, I try to use an existing profile… but without success.

If you have a solution to simply point to my local directory and load the local extension with Selenium (like I do with Chrome), I’ll send you virtual free hug :wink:

I have no other reason to not use the temp profile…

Best

Didier