Firefox v32 issues with Selenium WebDriver (Linux)

Firefox 32 does not work with Selenium WebDriver, and if you use Ubuntu and have upgraded recently, this is version you will probably have.  You will have seen some kind of error message from selenium, complaining about being unable to bind to the port firefox driver uses. To get round this annoyance, and as Ubuntu dont make it easy to downgrade Firefox version, I used following steps:-

  • sudo apt-get remove firefox
  • Download binary version of your choice (I used version 31)
  • Extract to location of you choice
  • Create link: ln -s /path/to/your/firefox/folder/firefox /usr/bin/firefox

Now Selenium and Firefox will play nicely 🙂


Using PhantomJS with Behat

Firstly, to install phantomjs you need to install it’s dependency, NodeJS:-

sudo npm install -g nodejs

Then install PhantomsJS (I would recommend using npm as it installs it correctly, including updating bin path):-

sudo npm install -g phantomjs

Continue reading

Continuous Quality Assurance using Selenium WebDriver


Inspired by Behat

Pride comes before a fall – A person who is extremely proud of his or her abilities will often suffer a setback or failure, because he or she tends to be overconfident and to make errors of judgment.  Latching onto Agile as a weak guide can give people a false sense of security.  Continue reading


BDD with Selenium and Fitnesse

How to use Selenium with Wiki tools, for requirements management and BDD.


Selenium and proxies

It is common when trying to automated web tests within company, you will be behind an HTTP proxy that requires authentication. To get round this, you have to specify the proxy details when starting Selenium.
Continue reading


Agile test automation

How does automated testing fit into Agile? It hasn’t changed that much, but a sensible approach (assuming development process is also sensible), is to do a combined UI and code level test, so you minimise the high-maintenance part (the UI tests). UI tests are always appealing, as easy to generate (with fine tuning, of course) but ultimately they are harder to maintain ongoing. The first flurry of automation can lead to a muddle of part-baked scripts, with no-one maintaining them and little relevance to requirements.
Continue reading