Thursday, 20 September 2012 16:46
Note: this is Part III of our 8 part series introducing desktop browser tools for testing mobile sites.
Device Manufacturers, or OEMs, typically provide desktop emulators of their platforms. Often these are aimed more toward native application development, but they can also be used for mobile website testing. Typically the emulator provided by the device manufacturer or OS provider is the closest-matching alternative to real device testing, although it’s not always the case. In the following we will present some of these manufacturer tools.
Safari Developer Tools - iPhone/iPod/iPad
Ok, we will start with this even though it's not really an emulator - but provided by Apple nevertheless. The Safari browser can be used to test out mobile website by changing the browser's User Agent string. Safari developer tools enable modifying, debugging, and optimizing (mobile) websites. Apple naturally has also SDK and emulator for native app development.
Works on: Windows, Mac OS X, Linux
Requirements: Install Safari browser on your desktop and enable Develop menu in the Advanced tab of preferences. (See a detailed tutorial as needed.)
- Simple to install and use
- Convenient user agent switching
- You will need to manually import other, non-Apple mobile user agent strings
BlackBerry simulators are provided by RIM for web developers to do BlackBerry compatibility testing on various devices. There’s support for keyboard, and trackpad/trackwheel/trackball input. The tools also allow running and debugging BlackBerry applications on desktop computers.
- Most of the typical device functionalities, even advanced like push notifications, can be tested. Very close to real device.
- Complex SDK, so there may be installation and other issues if you’re unlucky, and if you only want to test the browser, installing whole SDK is redundant.
Windows Phone Developer Tools
Windows Phone Emulator is a desktop tool to emulate Windows Phone 7 and up. Installation gives you a mobile environment where you can test, view, and debug Windows Phone apps and use the browser to check websites.
Works on: Windows 7 32-bit, Windows 7 64-bit, Windows Vista SP2 32-bit, Windows Vista 64-bit (XP not supported nor virtual machines)
Requirements: You need to download and install Windows Phone Developer Tools
Full-blown SDK with device emulator; allows for in-depth developer access to e.g. check on device peripherals, processor speed, RAM, display resolution and GPU • Lots of language versions available
- Only works on Windows
- Heavy and complex SDK with lots of requirements
- Some complaints about slow performance
Android SDK Emulator
Android SDK and included emulator enables you to create a virtual mobile device on which you can run Android applications and test mobile websites. It has Android system stack and includes preinstalled applications that you can access. You can find the emulator inside Android SDK package.
Works on: Windows, Mac OS X, Linux
Requirements: You need to download and install the Android SDK before you can launch Android Emulator to run the browser to test your site. It is recommended that you use Eclipse Classic version, or a Java or Eclipse RCP version for running the Android SDK. Before doing this, make sure that you also have Java SE Development Kit (JDK) installed on your computer. In order to use the emulator, you must also create one or more Android Virtual Device configurations where in each of them you must specify which platform to run, which hardware to use and which emulator skin is your choice. You can also run Firefox Mobile on top of the Android SDK.
- Full-blown SDK with device emulator; allows for in-depth developer access to e.g. telephony, SMS, and SD card emulation, Geo location, extensive logging capabilities. Very close to real device.
- Complex SDK with lots to install. Lots of unnecessary stuff if you just need the browser to test mobile websites.
- The Android SDK is quite slow – it might be better to use an image from android-x86.org in VirtualBox (+more tips)
Do you have your own tips or comments, or have we missed something? Let us know in the comments below!