I’m sure most of you have already used (or at least heard of) the web automation framework Selenium. It is typically used to write automated tests for websites or web applications. Try it out, it is really awesome.
Traditionally it has already been a challenge to run Selenium tests in different browsers. Selenium uses the different Webdrivers to control the different browsers. There is a Firefox driver to run tests in Firefox, a Chrome driver for Google Chrome and of course a IEDriver to run tests in Internet Explorer. Of course every webdriver is slightly different to setup so it is not trivial to do. And of course you can only test in the currently installed Internet Explorer version which makes it necessary to use Virtual Machines or solutions like Sauce Labs to run tests in different Internet Explorer versions.
Introduction BrowseEmAll Selenium
Luckily we can make running Selenium tests much easier by using a single Webdriver that can control any browser included in BrowseEmAll. So starting with version 6.3.8 we integrated full Selenium support into BrowseEmAll for the browsers Internet Explorer, Firefox, Chrome, Opera, Edge and the mobile simulators.
To start using BrowseEmAll with your Selenium test is really easy, simply change your code to use the Chrome Webdriver and specify the browser you want to use. Let’s look at the Java example here (other languages are also supported through Selenium):
// If BrowseEmAll.exe is not in your PATH you need to set // the BrowseEmAll install location. This should either be // C:\Program Files (x86)\BrowseEmAll\BrowseEmAll.exe or // C:\Program Files\BrowseEmAll\BrowseEmAll.exe System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\BrowseEmAll\\BrowseEmAll.exe"); ChromeOptions options = new ChromeOptions(); options.setExperimentalOption("beabrowser","IE11"); // Use the BrowseEmAll Webdriver and specify the browser you want to run directly in the code ChromeDriver driver = new ChromeDriver(options);
And that’s everything, the selenium tests should now run inside BrowseEmAll!
In the long run we plan to support any feature the official Webdriver API mentions and of course we are already working on the below features. Currently a few features are not yet available:
- The logging API is currently unsupported
- Our webdriver currently cannot handle alerts
- The Geolocation API is currently unsupported
Differences to other Browsers
- Aside from Internet Explorer and Firefox the browsers may not render the page in a visible way. This is expected behavior and does not hinder the test execution
- BrowseEmAll browser windows don’t need to be visible or in focus for the tests to run correctly
- Screenshots taken during test execution will always contain the full page (up to 4000 pixels in height)