After seeing that this is a problem with Firefox 35, I installed 34 and ran bundle exec rspec and my tests ran perfectly. But when I tried running it again, it somehow opened the newer version of Firefox as I get the following error again when I run my test suite:
Selenium::WebDriver::Error::JavascriptError: arguments[0] is undefined
Is there a way to guarantee that I don't have Firefox 35 installed that Selenium is somehow finding and opening? I know that Firefox 34 is the version of the Firefox in my Applications directory, but I am not certain there isn't a replica copy of a newer firefox that Selenium is grabbing when launchy is used.
This is a known issue with the current release of selenium.
As #janders223 points out in a comment on another question, the temporary workaround for a Ruby project is to use the dev version of the selenium-webdriver gem.
Modify your Gemfile to specify the latest dev version (as of this writing):
gem 'selenium-webdriver', '>=2.45.0.dev3'
Then run bundle install.
So, this is incredibly basic, but I found that when I had installed Firefox 34 via the dmg listed here, because I had naïvely just dragged and dropped the Firefox icon into the Applications folder clicking "Yes, I would like to overwrite the extant application" I hadn't ensured all of the newer files of Firefox 35 weren't available for Selenium to use, which Selenium availed itself of without me knowing which version it was choosing.
I simply uninstalled Firefox completely from my the mac by dragging it into the Trash, & reinstalled the Firefox 34 dmg.
N.B. Also if you run into this issue, when you download Firefox 34, you have to go to Firefox >Preferences>Advanced , click the Update tab, and choose "Check for updates, but let me choose whether to install them" or "Never check for updates" to prevent Firefox from automatically updating to Firefox 35 and therefore messing with your Selenium test suite the next time you run them again.
This problem also appearing in python selenium package nowdays. it is possible, that "arguments" appearing in code eventually. It can be solved simply by announsing all arguments at start in different var variables.
Approved answer showing this technique.
Related
I see WATIR supports Edge browser automation in official website. But when I tried to run my existing suite on Edge after setting the path for MicrosoftWebDriver.exe in environment variables I am facing the below error .
Selenium::WebDriver::Error::WebDriverError: unable to connect to
MicrosoftWebDriver localhost:17556
Below are my version details.
Watir - 6.8.4
Ruby - 2.2.6
Windows 10 64 bit
I even tried using webdrivers gem of titusfortner. But, no success webdrivers gem is not downloading MicrosoftWebDriver.exe into .webdrivers folder in my users directory.
I wanted to know whether I have anything wrong in my set up to trigger edge browser. Thanks in advance
Got the issue resolved. We have to download the right version of Microsoft WebDriver.
Go to Start > Settings > System > About and locate the number next to OS Build on the screen. This is your build number. Having the correct version of WebDriver for your build ensures it runs correctly.
Get the right version of driver at WebDriver - Microsoft Edge Development
So I've been having an issue getting my Protractor/Jasmine tests running in FireFox. I've been aware of the version issue from FireFox that doesn't support selenium angular/bootstrap etc etc and that has been my issue to date.
I was informed to try geckodriver but really can't find any good resources on how to set it up using protractor and jasmine. Or even which driver is the appropriate one to use.
Recently I've tried the following to get FF back up and running (all resulted with no luck):
Downgraded FireFox to as low as 33.x.x while keeping
Protractor/Jasmine at current versions (4.0.5 and 2.51 respectively).
Downgraded Protractor to as low as 3.0.0 while keeping FF at current version (47.0.1)
Downgraded both Protractor and FF to the lowest above versions.
Used Latest Version of FF 47.0.1 with lesser versions of Protractor.
Used Latest Version of FF 47.0.1 with latest version of Protractor 4.0.5
Used directConnect: true and directConnet: false
So I guess now I have one of two questions:
1. Could somebody post a protractor config snippet using the geckodriver / or direct me to a walk-through of this.
2. Inform me of a work around or a working solution (versions of both webdrivers/protractor/jasmine, etc).
If you need to see errors or my config file or anything at all please just simply comment and I'll be happy to revise.
There was a period of time around Firefox v46 and Selenium v2.5x where things were incompatible due to changes to the firefox web-driver. The issues were quickly addressed by the community.
The issue with Protractor lies with the webdriver-manager being a bit out of date with the updates. As per discussions on github, they are aware of this, and a fix is coming.
The workaround in the meantime is to manually update the outdated pieces.
Here's how you'd do it, run
webdriver-manager update
This will give you the paths to all the components the webdriver-manager handles for you.
Navigate to the selenium-server-standalone.jar file (protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-2.53.1.jar in my case) and replace this with the latest selenium standalone jar (anything v3+ should be good). Make sure to retain the exact filename as the previous jar file. (link: http://www.seleniumhq.org/download/)
Repeat the process to get the latest Gecko web-driver. Uncompress and replace the current version. (link: https://github.com/mozilla/geckodriver/releases)
Now run your tests through protractor and you should be good with the latest version of Firefox.
Good luck and happy testing :)
Jpm creates install.rdf with compatible versions range starting with 38.
If created addon which works on 38, is forcefully installed on Firefox 37.0 it fails (there are no obvious related errors in the browser console, plugin installation just has no effect except for addon entry on about:addons).
Can I still use jpm to create addons for older Firefox versions?
Is cfx indeed deprecated if its replacement can't create an addon even for beta channel of updates?
Should I continue to look for a bug in my addon which worked fine on 38 and on 37 (being built with cfx)?
no, unless you use an older version ( v.0.0.23 or below I think )
deprecation means we won't fix any bugs and are encouraging people to check out jpm - not that you cannot use it. Until Firefox 38 is released it is completely reasonable to use cfx to package extensions intended to be used by Firefox users.
I have no idea - you haven't really provided enough information about the bug.
I had a situation where a user saw an error on her browser which is Firefox. It might be an older version. Is there a way to test multiple versions of Firefox without downloading a bunch of them?
You can use Utili Mozilla Firefox collection if you want to test your site in different versions of Firefox. It's really convenient - a lot of versions in one pack.
http://utilu.com/UtiluMFC/
(I'm not associated with this company)
cheers
I have a folder /browsers with custom versions of browsers, e.g. firefox, chrome, opera.
Then launch the different version when you need to test a specific version rather than launching the default one from your Applications.
*e.g. just rename the installed .app.
Chromium.app rename to e.g. Chromium_19.app need to disable auto-updates
Firefox.app rename to Firefox_38.app
firefox releases
Chrome releases
Opera releases
Multi Safari
Yes you can do this. I have gone through multiple links to find its solution. For example you want to install firefox 4.0 but want to keep 3.6 as well then you need to install Firefox 4.0 using the Custom Installation option, in a uniquely named folder — like /Program Files/Firefox 4.0/ — don't let 4.0 run after the installation procedure is complete.
Create a new profile exclusively for the 4.0 beta version and create a desktop shortcut with -P "profile" appended to the target to launch that profile.
Helpful links will be link1 and link2.
During the search I have also found one software utilu that may be useful, but clearly speaking I have not tried that yet, will try later.
there sites like these http://browsershots.org/. They let you test browsers without downloading.
If you're on OSX using Homebrew, you can install via brew cask:
brew tap goldcaddy77/firefox
brew cask install firefox-46
More info can be found at the git repo homebrew-firefox
I'm trying to install the web developer plugin, and it's failing with a message that "Web Developer 1.1.8 could not be installed because it is not compatible with Firefox 3.6.13".
I don't believe that it's actually incompatible; rather I think the problem is because the installation fails during a validation check, probably because the corp. network is messing with the connections. The message I get is that:
services.addons.mozilla.org uses an invalid security certificate
and when I view the certificate, it's issued by the networking group, not mozilla.
Is there a way to by-pass the version check so I can install it?
The most likely explanation is that the XPI you were trying to install had em:maxVersion in its install.rdf smaller than the Firefox version, so Firefox was checking with addons.mozilla.org to see if the version you were trying to install was marked as compatible (addons.mozilla.org allows to bump the maxVersion, but doesn't update the XPI it serves to the users).
If for any reason that update check failed, Firefox wouldn't let you install the extension.
The solution in that case (extension version actually compatible with Firefox, but has stale information in its install.rdf) would be to edit the XPI to bump maxVersion manually before attempting to install the XPI.
That's weird that it's giving you the "not compatible with Firefox version x" message since, as you say, that doesn't seem to be the actual problem. See if this works: Right-click on the installer link and select "Save Link As..." and save the file on your hard drive. It will be called something like webdeveloper.xpi. Then just drag and drop the file onto Firefox.