My favorites | Sign in
Project Home Downloads Wiki Issues Source
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 3144: Firefox Profile for Webdriver is defective - fix included
6 people starred this issue and may be notified of changes. Back to list
Status:  Fixed
Owner:  eran....@gmail.com
Closed:  Jan 2012
Cc:  dawagner@gmail.com, david.bu...@theautomatedtester.co.uk


Sign in to add a comment
 
Reported by tobias.g...@gmx.de, Jan 4, 2012
What steps will reproduce the problem?
Running this test case https://gist.github.com/1560299 against Selenium 2.15

What is the expected output? What do you see instead?
I don't expect to see any Firefox error messages.
Instead an AutoConfig warning pops up.

Selenium version: 2.15
OS: Windows 7
Browser: Firefox
Brower version: 8.0.1

The problem originates from the fact that the property           "toolkit.telemetry.prompted" in prefs.js has been changed from a numerical value to a boolean.
To fix the issue the map "FROZEN_PREFERENCES" in org.openqa.selenium.firefox.FirefoxProfile needs to be adapted.
Changing
.put("toolkit.telemetry.prompted", 2)
to
.put("toolkit.telemetry.prompted", true)
fixes the issue for me.
Jan 4, 2012
Project Member #1 dawagner@gmail.com
This issue was closed by revision r15368.
Status: Fixed
Jan 4, 2012
#2 tobias.g...@gmx.de
you are fast - thanks a lot!
Jan 4, 2012
Project Member #3 david.bu...@theautomatedtester.co.uk
reopening. 

None of our tests have hit this issue. Are you running this through a proxy or is your IT department handling all of the Firefox roll outs?
Status: New
Cc: dawagner@gmail.com david.bu...@theautomatedtester.co.uk
Jan 5, 2012
#4 tobias.g...@gmx.de
Unfortunately I have no idea why your tests are not hitting this issue.
Did you take a look at the gist I posted? This reproduces the error perfectly for me.

I've run into this issue on Windows 7 64Bit using Firefox 32Bit - maybe that's related?
I'm installing Firefox on my own (no IT department involved) and I'm not using it through a proxy.

After digging through the firefox source code (for version 8.0.1) I've found this:

#ifdef MOZ_TELEMETRY_REPORTING
  _showTelemetryNotification: function BG__showTelemetryNotification() {
    const PREF_TELEMETRY_PROMPTED = "toolkit.telemetry.prompted";
    const PREF_TELEMETRY_ENABLED  = "toolkit.telemetry.enabled";
    const PREF_TELEMETRY_INFOURL  = "toolkit.telemetry.infoURL";
    const PREF_TELEMETRY_SERVER_OWNER = "toolkit.telemetry.server_owner";

    try {
      // If the user hasn't already been prompted, ask if they want to
      // send telemetry data.
      if (Services.prefs.getBoolPref(PREF_TELEMETRY_ENABLED) ||
          Services.prefs.getBoolPref(PREF_TELEMETRY_PROMPTED))
         return;
    } catch(e) {}

Services.prefs.getBoolPref indicates that this is a boolean setting, not a numerical one.
Jan 5, 2012
#5 tobias.g...@gmx.de
Forgot to add: The code snippet is from browser/components/nsBrowserGlue.js
Jan 5, 2012
#6 mattpons...@gmail.com
Just came across this using Firefox 9. Looks like the type of the toolkit.telemetry.prompted preference has changed between Firefox 8 and Firefox 9. Selenium will somehow have to handle both?
See https://bugzilla.mozilla.org/show_bug.cgi?id=697860.
Jan 6, 2012
Project Member #7 dawagner@gmail.com
 Issue 3154  has been merged into this issue.
Jan 6, 2012
#8 robinleepowell@gmail.com
OK, so back in 3154 I pointed out that the following:

      profile = Selenium::WebDriver::Firefox::Profile.new
      # See https://code.google.com/p/selenium/issues/detail?id=3154
 #      profile['toolkit.telemetry.prompted'] = 2
 #      profile['toolkit.telemetry.rejected'] = true

      caps = Selenium::WebDriver::Remote::Capabilities.firefox(:firefox_profile => profile)
      @driver = Selenium::WebDriver.for( :remote,  :url => "http://localhost:#{@port}/wd/hub
                                        :desired_capabilities => caps)

works for me, even with the two commented out lines.  This was very suspicious, and I've figured it out: my "solution" was disabling native events; see https://code.google.com/p/selenium/issues/detail?id=3163

So, with native events off, the telemetry can be ignored, but then you're not in native events mode and other things can (and do) explode if you rely on mouse movements.

In native events mode, Selenium can't click anything until you manually interact with the telemetry window.

So, we're back to square one, which is things not working.  :(

-Robin
Jan 9, 2012
Project Member #9 eran....@gmail.com
This was fixed for Firefox 8 and 9 in r15444. With the changes in this revision, the telemetry prompt does not appear for either version.
Status: Fixed
Owner: eran....@gmail.com
Jan 9, 2012
#10 robinleepowell@gmail.com
Loverly.  Is it possible to get a nightly build of that or something?

-Robin
Jan 11, 2012
#11 pavi...@gmail.com
When is this expected to be in official release ?
Jan 11, 2012
Project Member #12 eran....@gmail.com
This should be in 2.17, which is scheduled to be released on Friday.
Jan 15, 2012
#13 pavi...@gmail.com
Any updated release plan for 2.17 ?
Sign in to add a comment

Powered by Google Project Hosting