Spent a little bit of time trying to figure out getting Selenium 3 working with Firefox to get behat tests with javascript working (using Firefox). Turns out it's pretty simple!
This role installs the latest version of Firefox which needs to use the GeckoDriver to operate with Selenium. You can download it from:
https://github.com/mozilla/geckodriver/releases
Secondly, installing Selenium standalone version 3.0.1 works with no configuration.
So, in my config.yml I have:
selenium_version: 3.0.1
selenium_install_firefox: yes
and I created a post-provision script which looks like:
#!/bin/bash
GECKO_VERSION="0.11.1"
GECKO_DOWNLOAD="https://github.com/mozilla/geckodriver/releases/download/v0.11.1/geckodriver-v$GECKO_VERSION-linux64.tar.gz"
GECKO_DOWNLOAD_DIR="/tmp"
GECKO_NAME="geckodriver"
GECKO_PATH="/usr/local/bin"
GECKO_FULL_PATH="/usr/local/bin/$GECKO_NAME"
if [ ! -e "$GECKO_FULL_PATH" ]; then
wget -qO- $GECKO_DOWNLOAD | tar xvz -C $GECKO_DOWNLOAD_DIR
sudo cp -a $GECKO_DOWNLOAD_DIR/$GECKO_NAME $GECKO_PATH
else
exit 0
fi
This installs the driver in a location that selenium can find it. Simple as that and it appears to be working as expected.
Spent a little bit of time trying to figure out getting Selenium 3 working with Firefox to get behat tests with javascript working (using Firefox). Turns out it's pretty simple!
This role installs the latest version of Firefox which needs to use the GeckoDriver to operate with Selenium. You can download it from:
https://github.com/mozilla/geckodriver/releases
Secondly, installing Selenium standalone version 3.0.1 works with no configuration.
So, in my config.yml I have:
selenium_version: 3.0.1
selenium_install_firefox: yes
and I created a post-provision script which looks like:
#!/bin/bash
GECKO_VERSION="0.11.1"
GECKO_DOWNLOAD="https://github.com/mozilla/geckodriver/releases/download/v0.11.1/geckodriver-v$GECKO_VERSION-linux64.tar.gz"
GECKO_DOWNLOAD_DIR="/tmp"
GECKO_NAME="geckodriver"
GECKO_PATH="/usr/local/bin"
GECKO_FULL_PATH="/usr/local/bin/$GECKO_NAME"
if [ ! -e "$GECKO_FULL_PATH" ]; then
wget -qO- $GECKO_DOWNLOAD | tar xvz -C $GECKO_DOWNLOAD_DIR
sudo cp -a $GECKO_DOWNLOAD_DIR/$GECKO_NAME $GECKO_PATH
else
exit 0
fi
This installs the driver in a location that selenium can find it. Simple as that and it appears to be working as expected.