Skip to content

Platforms supported

fred-wang edited this page Apr 13, 2012 · 5 revisions

Platforms supported

Overview

The combination of Selenium 1 and 2 APIs provides the following support:

  • Jax output set to:
    • HTML-CSS with availableFonts set to STIX, TeX or ImageTeX fonts.
    • NativeMML, including the case of MSIE + MathPlayer.
    • SVG
  • Firefox ; Linux/Windows
  • Safari ; Windows
  • Chrome ; Linux/Windows
  • Internet Explorer (Windows) ; modes Quirks, IE7, IE8, IE9
  • Konqueror (Linux)
  • Opera ; Linux/Windows. works with restriction.
  • Firefox, Safari, Chrome and Opera ; Mac: not tested yet.
  • iPhone (Mac): not tested yet.
  • HTMLUnit ; Linux/Windows ; Mac: not tested yet. works for non visual tests.
  • Android (Linux): works with restriction.

Firefox

Automated testing works for Firefox with Linux and Windows and Mac, using both Selenium 1 and (preferably) Webdriver.

Safari

Automated testing works for Safari on Windows, using Selenium 1. Webdriver does not provide a driver for Safari. See http://code.google.com/p/selenium/issues/detail?id=599

Chrome

Automated testing for Chrome works on Linux and Windows, using Selenium 1 and Webdriver. However, the Chrome driver on Linux has a serious limitation at the moment: it is not possible to take screenshots (http://code.google.com/p/chromium/issues/detail?id=89777#c4). Hence it is recommended to use Selenium 1 when you execute a set of tests that includes visual reftests and the faster Webdriver API otherwise.

To use Webdriver, a ChromeDriver server should be installed on the test machine. See http://code.google.com/p/chromium/downloads/list

Internet Explorer

Automated testing works for Internet Explorer using Selenium 1 and Webdriver. However, selection of Internet Explorer's compatibility mode is not implemented yet when Webdriver is used (default mode is Quirks). See http://code.google.com/p/selenium/issues/detail?id=2564

IE9 with Selenium 1 is very slow and timeout happens too often!

To use Webdriver, you should follow the instructions in "Required Configuration": http://code.google.com/p/selenium/wiki/InternetExplorerDriver

On IE 7 or higher on Windows Vista or Windows 7, you must set the Protected Mode settings for each zone to be the same value. The value can be on or off, as long as it is the same for every zone. To set the Protected Mode settings, choose "Internet Options..." from the Tools menu, and click on the Security tab. For each zone, there will be a check box at the bottom of the tab labeled "Enable Protected Mode".

Unlike other WebDriver classes, there should only ever be a single InternetExplorerDriver instance at once on a given machine.

Konqueror

Automated testing works for Konqueror on Linux, using Selenium 1. Webdriver does not provide a driver for Konqueror.

It fails with the latest Selenium version, last time I tried!

Opera

Automated testing works for Opera on Linux/Windows, using Webdriver. (I was also able to make Selenium 1 work with Opera, but it is better to use the Webdriver interface).

Note that MathJax support for STIX fonts is disabled with Opera, so it's preferable to use TeX fonts for testing.

On Windows Vista and 7 the program files directory is not writable. If you run Opera 11.5x from this location you will get an error beginning "Opera has failed to access or upgrade your profile". To solve that issue, you have to install Opera in a custom location and set the OPERA_PATH accordingly. See https://github.com/operasoftware/operadriver#readme

iPhone

Automated testing for iPhone would require a Mac (and Webdriver) and thus I have not tested it yet. See http://code.google.com/p/selenium/wiki/IPhoneDriver

HTMLUnit

HTMLUnit is a GUI-less browser which uses the Rhino JavaScript engine. Automated testing works for it on Linux/Windows using Webdriver. Obviously, visual reftest are not relevant for this configuration and thus are skipped.

Android

Automated testing works for Android (on Linux), using Webdriver. I have only tested it using the emulator (not real Device). See http://code.google.com/p/selenium/wiki/AndroidDriver

The documentation says to setup port forwarding to make the android server available at http://localhost:8080/wd/hub. However, this address seems to be only reachable from the machine on which the emulator is running. Consequently, I've only be able to make it work when the test runner and Android emulator are on the same machine.

Similarly, the address http://localhost/ does not seem reachable from the emulator, so I've used http://devel.mathjax.org instead to get the test suite pages and MathJax scripts.

Obviously, the screen resolution is lower on a mobile, so that may be problematic for some visual reftests.

Clone this wiki locally