Mobile Testing: Tools to make it easy

Mobile Testing Tools Thorough testing requires you to test on a mix of devices and software and the possible combinations of these are almost endless. Add to this the idea that although automated testing tools are great for desktop website, when it comes to testing mobile devices a manual / ad hoc approach is often the best approach. So where do you start? Well there are a few tools available that can help you on your way...

Browser Emulation

Although not perfect (it rarely mimics the exact behaviour of an actual device) browser emulation is a great way to quickly see how sites would look on different mobile sizes and if they are responsive. So as long as you keep in mind that pixel rendering is still handled by the desktop rather than on a mobile and that actions such as clicking, tapping and swiping won’t work the same on a mobile, browser emulation will still allow you to quickly see how your website / software will look in a particular resolution.

A few browser emulations tools I have used and liked include:

Actual Devices

There’s no beating testing on an actual device, but for most companies this is a rather expensive, time consuming and therefore impossible option. Even if is is a possibility, it is really hard to decide which devices to buy and test on and then add in the fact that they’ll need updating every 6 - 12 months as new versions are released and to keep up with the current mobile usage market. A recent webinar I listened to suggested choosing the top two performing devices, the middle two performing devices and lowest two performing devices. However, even with ‘just’ six devices it is very hard to make sure they are always charged, always connected to the internet, and to also remember how to make and export screenshots etc.

What OS/Browser is this device using?

The first time I use a new device, or one I’ve not used for a while, I am usually left feeling overwhelmed: knowing / remembering what software version the device is operating on and how to find out can be a minefield in itself. This is when I use the following websites:

Each of these sites provide similar information, but some are better than others in particular scenarios. I would suggest you create a quick table with the specifics of devices you are using and keep this somewhere visible. I like to record:
Device name IMEI No Serial No Charging leads Dimensions OS Browsers
Nexus 7 7123456789 D11KBC222222 Black Asus plug with usb lead 133.9 x 68.7 x 9.1 Android 4.3 Chrome 32

This will help you in the future for insurance, theft, borrowing and client requests.

Actual devices with helpful software

There are various tools out there to help you load web pages on all devices at the same time. If you have set up a device lab in your office, this is a great add-on to your testing tools.

Here are most popular ones:

  • GhostLab – unfortunately it does have a one-off cost of $49 but it’s easy to use and doesn’t require any software installations on any of your devices
  • Google MiniMobile Device lab – an open source tool however you may find it more difficult to setup
  • Adobe Inspect – a Chrome extension that works with downloaded apps on devices. Requires quite a bit of setup.
  • Muir – similar to Adobe Inspect, but requires you to pay for device apps.

Automated Functional Testing tools

These are useful if you have a rapid development cycle, a quick release schedule and don’t have enough time to re-test everything on all devices at the same time. This still doesn’t make it as good as actual device testing, but it does save time on regression testing.

Popular tools:

Proxy & Snooping Tools

If you are interested in catching what happens between your mobile and the web, then proxy tools are great for testing just that. These are often used for security and data testing.

Example tools:

Other Tools

A few final consideration / thoughts to note when looking at device testing...

When developers have just released an application they might want to try and share it with testers, but don’t want to share it with the general public. In this case TestFlight and TestFairy come into their own. If you do want the app to be tested by a larger user group before releasing it to everyone then you should consider using crowd testing sites such as uTest.

When releasing, make sure all debug information and test data is removed beforehand. Remember that submitting an app to the App Store or Google Play won’t always get it into the store right away: it can (and does!) take quite a while for it to get through the approval process.

Related blog posts: