The BrowseEmAll Internet Explorer Emulator
The BrowseEmAll Internet Explorer Emulator
To help with cross browser testing websites for older Internet Explorer versions on Windows 7, Windows 8 and Windows 10 our solution BrowseEmAll contains an Internet Explorer Emulator. In this post I will talk about why this is necessary and how it all works.
Why an IE Emulator is necessary
The Microsoft browser Internet Explorer is still in use in various different versions including IE 8, IE 9 and IE 10. Unfortunately it is not possible to just install any Internet Explorer version on a Windows machine.
For example you cannot install Internet Explorer 10 on Windows Vista or Internet Explorer 7 on Windows 10. Moreover it is not possible to install more than one version of Internet Explorer on a Windows machine at the same time.
This restrictions make it necessary to either test use Virtual Machines provided by Microsoft or use an Internet Explorer Emulator to run more than one version of Internet Explorer on your local machine.
What is the difference to a Internet Explorer Simulator?
Commonly an emulator describes a piece of software that emulates the behavior of another software as closely as possible. A good example for this would be the iPhone emulator which can be run on any Mac to emulate an actual iPhone without the physical device.
A simulator on the other hand tries to do roughly the same thing but with a lot less accuracy. An iPhone simulator could be a normal browser window resized to the screen size of an iPhone.
So while a simulator might be useful for testing an emulator will generate much more accurate results even though most emulators are still not 100% reliable.
How does the BrowseEmAll IE Emulator work?
So how does the Internet Explorer Emulator inside our cross browser testing application BrowseEmAll actually work?
As a basis BrowseEmAll uses the Internet Explorer version currently installed on your machine. If the selected IE version inside BrowseEmAll does not match the installed version on your machine our solution will swap out specific files to emulate an older version of the JavaScript and rendering engine of Internet Explorer. The swapped out files are mainly .dll files like mshtml.dll, ieframe.dll and jscript.dll.
Using this method your website will render using the actual rendering engine of Internet Explorer inside BrowseEmAll without affecting other applications on your local machine.
The only downside of this approach is that BrowseEmAll is unable to emulate newer versions of Internet Explorer than you have currently installed.