Imagine this, you’ve got a whole suite of regression tests (thousands of steps) written in Watir-WebDriver that you run on a corporate Windows XP SOE using Firefox.
The tests have been run numerous times and are running perfectly without any intermittent failures.
A new version of selenium-webdriver is released with promised bug fixes and stability improvements, so you update your selenium-webdriver gem to 2.6.0 and re-run your test suite.
Red light: half of the tests fail. The suite takes longer than ever to run. Oh my.
After some investigation, Jari Bakken points out that it’s Firefox native events related. This causes text field sets to take a long time if they include capital letters, and locating elements seems to often intermittently fail.
I add a config option to disable native events to my Firefox profile, and my tests run perfectly again. Phew!
So, if you’re using Windows and Firefox and come across any of these problems, include this code to disable native events when you start your browser.
profile = Selenium::WebDriver::Firefox::Profile.new profile.native_events = false Watir::Browser.new WEB_DRIVER, :profile => profile