Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Firefox Gecko Not launching on grid

52 views
Skip to first unread message

Keohane, Brian

unread,
Jan 18, 2019, 8:15:04 AM1/18/19
to tools-ma...@lists.mozilla.org
Hi There,

I said I would email you as not sure if it's a bug or config issue.

When I run a test on Gecko/Firefox it is working locally as expected no issues.
I run the same test on selenium grid using chrome it works as expected.
But when I run it on Firefox over the grid it does not work.
What I get is that it opens the browser but never hits the url.
I am on Firefox 64 Gecko 23.0 and Selenium 3.13.
Below are my settings to connect to run over the grid.
I have set logging to ALL and in the node set the level to trace if there was an output there once I noticed it wasn't launching
Both in the node prompt and the console there are no extra logging for a trace log?
I do see - Timed out waiting 45 seconds for Firefox to start.
In the logs on java even though firefox is launched on the node. It just not enter a url.

Node Config
{
"capabilities": [

{
"browserName": "firefox",
"moz:firefoxOptions": {
"profile": "<base64 encoded profile>",
"args": ["-headless"],
"prefs": {"dom.ipc.processCount": 8},
"log":{"level": "trace"}
},
"maxInstances": 1,
"platform": "WIN10",
"takesScreenshot": true,
"marionette":false,
"seleniumProtocol": "WebDriver"

}
],

"maxSession": 1,
"register": true,
"hub": "http://auto-grid:4444/grid/register"
}

Node Connection

java -Dwebdriver.gecko.driver="C:\Resources\Drivers\geckodriver.exe" -jar selenium-server-standalone-3.13.0.jar -role node -nodeConfig nodeConfig.json

capabilities for firefox

if (browserType.equalsIgnoreCase("Firefox")) {

FirefoxProfile firefoxProfile = new FirefoxProfile();
firefoxProfile.setAcceptUntrustedCertificates(true);
firefoxProfile.setAssumeUntrustedCertificateIssuer(true);
firefoxProfile.setPreference("security.insecure_field_warning.contextual.enabled", false);
capability = new FirefoxOptions().setProfile(firefoxProfile).addTo(DesiredCapabilities.firefox());
capability = new FirefoxOptions().setLogLevel(Level.ALL).addTo(DesiredCapabilities.firefox());

capability.setBrowserName("firefox");
capability.setPlatform(Platform.WIN10);
capability.setCapability("marionette", false);

}


Thanks,
Brian

[Sage Business Cloud]
Discover how Sage Sessions are transforming the way businesses work. Register now.<https://get.sage.com/SageSessionsUK>
Newcastle | London | Bristol | Manchester | Glasgow | Dublin


If you've received this email by mistake, we're sorry for bothering you. It may contain information that's confidential, so please delete it without sharing it. And if you let us know, we can try to stop it from happening again. Thank you. We may monitor any emails sent or received by us, or on our behalf. If we do, this will be in line with relevant law and our own policies. Sage Technologies Limited. Registered in Ireland at 3096 Lake Drive, Citywest Business Park, Dublin 24. Registered number 275060. Directors: P O'Neill, A Henry (France) and M Parry (UK).
The information contained in this email transmission may constitute confidential information. If you are not the intended recipient, please take notice that reuse of the information is prohibited.


Andreas Tolfsen

unread,
Jan 18, 2019, 8:28:19 AM1/18/19
to Keohane, Brian, tools-ma...@lists.mozilla.org
Hi Brian,

Also sprach Keohane, Brian:

> I said I would email you as not sure if it's a bug or config issue.
>
> When I run a test on Gecko/Firefox it is working locally as expected
> no issues. I run the same test on selenium grid using chrome it
> works as expected. But when I run it on Firefox over the grid it
> does not work. What I get is that it opens the browser but never
> hits the url.

I think you would have greater luck asking Selenium Grid specific
questions on a Selenium mailing list or by opening a Selenium issue.

I don’t know Grid at all, but if it works locally but not on Grid
this suggests a Grid configuration problem. If you have a trace-level
log from geckodriver on the remote host that would help determine
if it is indeed an underlying geckodriver problem.

Keohane, Brian

unread,
Jan 18, 2019, 8:40:47 AM1/18/19
to Andreas Tolfsen, tools-ma...@lists.mozilla.org
Hi Andreas,

Thanks very much for getting back to me.
I have resolved the issue.
The config for the Node and capabilities was the issue
For some reason it didn’t like the WIN10 option and setting it to WINDOWS resolved it.
Not sure if that’s an introduced bug on who evers side or perhaps something removed deliberately.
Glad its running again 😊

PS Quick question on the trace log I had trouble enabling it. On a Node does it have to be set up in the json file as that’s where firefox and gecko are if so where is the output?
or is it something set up in java and outputted in my console when running a test?

Thanks,
Brian
________________________________

Attention:
This email has arrived from the internet.
Please use caution when opening attachments. Please follow all appropriate security policies when opening any email from a non-trusted source. If you feel this message is suspect please contact your local security representative or Help Desk for review.

Andreas Tolfsen

unread,
Jan 18, 2019, 8:45:47 AM1/18/19
to Keohane, Brian, tools-ma...@lists.mozilla.org
Also sprach Keohane, Brian:

> The config for the Node and capabilities was the issue For some
> reason it didn’t like the WIN10 option and setting it to WINDOWS
> resolved it. Not sure if that’s an introduced bug on who evers
> side or perhaps something removed deliberately.

That actually sounds like a Selenium Grid bug.

geckodriver implements the W3C WebDriver standard, which introduced
some changes to capabilities configuration. One of the changes was
to use well-understood semantics for configuring the platformName
capability. geckodriver only accepts “windows”, “linux”, and “mac”.
It sounds like Grid should map WIN10 to the first.

It still doesn’t explain why you didn’t receive a session not created
error back.

> PS Quick question on the trace log I had trouble enabling it. On a
> Node does it have to be set up in the json file as that’s where
> firefox and gecko are if so where is the output? or is it something
> set up in java and outputted in my console when running a test?

The output goes to stdout, which you need to intercept and redirect
to a file.

Because you’re using Grid, the geckodriver instance will run on
another remote machine which obviously complicates the log retrieval.

Keohane, Brian

unread,
Jan 18, 2019, 9:01:18 AM1/18/19
to Andreas Tolfsen, tools-ma...@lists.mozilla.org
Yes I had moved onto a matching capabilities error after the session not created.
And the windows was the offender there sorry.
From reading up on various forms a lot of people were setting marionette to false which I had that time but it was launching firefox and also giving me the session not created.
Reading more and you can correct me if I am wrong that is only true if I am using an older version circa 47 of FF and not using the gecko driver at all.
I should prob set up my own blog to document the setting up off gecko/java and selenium grid for myself and other users.

Thanks for letting me know about the trace I will look up how to intercept the stdout for future reference, I can isolate one node so I don’t have to search several VMs.

Thanks,
Brian

-----Original Message-----
From: Andreas Tolfsen <a...@sny.no>
Sent: 18 January 2019 13:46
To: Keohane, Brian <Brian....@sage.com>
Cc: tools-ma...@lists.mozilla.org
Subject: Re: Firefox Gecko Not launching on grid

Andreas Tolfsen

unread,
Jan 18, 2019, 9:07:41 AM1/18/19
to Keohane, Brian, tools-ma...@lists.mozilla.org
Also sprach Keohane, Brian:

> From reading up on various forms a lot of people were setting
> marionette to false which I had that time but it was launching
> firefox and also giving me the session not created.
>
> Reading more and you can correct me if I am wrong that is only true
> if I am using an older version circa 47 of FF and not using the
> gecko driver at all.

In broad strokes, yes.

It is my understanding that the ‘marionette’ capability is a Java-only
way of disabling geckodriver. This will as you correctly pointed
out only work on Firefox <= 47, because the old Selenium-written
WebDriver implementation for Firefox is not compatible with modern
Firefoxen.

0 new messages