MOBILE TESTING TOOLS
Since mobile applications have become ever more important, an increasing variety of tools and online resources have emerged to help you test them. Tools exist for native apps, HTML5/web interfaces, iOS, Android, Windows and other platforms.
In this blog I will highlight some of the resources that can help you get started with mobile testing. I have split this into 4 sections:
- Automated mobile testing tools
- Mobile web emulators and testing tools
- Android testing tools
- iOS testing tools
TOP 7 AUTOMATED MOBILE TESTING TOOLS
There are some commercial automated testing tools offered as specialized modules or additional tools as part of some products designed for mobile applications.
Keynote is available in multiple editions and allows you to test your apps and websites on different devices and automate your mobile tests. It ensures the quality of your mobile apps and sites by testing on real devices over live carrier networks. Keynote’s “DeviceAnywhere” cloud claims to contain the largest interactive mobile device library in the world — including the most current and popular smartphones and tablets. You can use Keynote to test mobile websites or apps on iOS, Android, BlackBerry, and Windows Phones. You can also integrate it with custom mobile devices including smartphones, tablets, wearable, and even other devices such as ruggedized, set-top, and in-vehicle devices.
Ranorex can be used to automatically test mobile applications on iOS, Android and Windows devices. Ranorex allows you to directly record your tests on a device, so you can build your tests cases automatically. It supports the following technologies: .NET, WPF, Windows Forms, Qt, Java, SAP, Delphi, HTML5, Flash, Flex, Silverlight, iOS, Android, Windows Apps (native / hybrid / mobile web). Once a test script has been recorded, it can run in various popular browsers, such as Internet Explorer, Firefox, Chrome or Safari.
This is the combination of eggPlant Functional and TestPlant’s mobile VNC servers offering the possibility to fully direct and automate control of iOS, Android, Windows phone, Blackberry, and other mobile devices.
eggPlant Functional is able to naturally conduct mobile testing using the iOS and Android Gateway agents to connect directly to live mobile devices, or to emulators. eggPlant Functional’s image-based UI testing approach is a natural way to test user-experienced focused mobile applications, and reduces the effort of cross-device and cross-platform mobile software testing.
Silk Mobile (Commercial)
Silk Mobile is a functional testing tool that serves as a mobile application testing solution and helps companies to create advanced and reliable mobile business applications. The tool is designed to provide an easy-to-use approach to the functional testing of applications on mobile devices across multiple OS platforms including Android, iOS, BlackBerry, Windows Mobile, Symbian, and HTML5.
The SeeTest mobile automation tool, by Experitest, offers four main areas:
- SeeTest Cloud. An onsite device lab that different testing teams can remotely access
- SeeTest Automation. A test automation tool for mobile that enables you to run the same tests on different devices.
- SeeTest Manual. Use this when you need to test manually on remote devices located onsite device lab (SeeTest Cloud).
- SeeTest Network Virtualization. Emulates real world network conditions to test the actual experience of users.
NativeDriver (Open Source)
Created by Google, NativeDriver provides test automation for iOS and Android native applications. It is an implementation of the WebDriver API. The test automation uses the UI of a native application, rather than a web application.
As Google has stated, NativeDriver is an attempt to apply WebDriver’s simplicity to native applications. It extends the WebDriver API in a few key places, and re-interprets the existing API for native applications.
MonkeyTalk was an open source tool which automated real and functional interactive tests for native, mobile, and hybrid iOS and Android apps, on real devices or simulators. In June 2015, it was acquired by Oracle.
11 TOP MOBILE WEB EMULATORS AND TESTING TOOLS
There are various free web applications that make it easy to evaluate web interfaces using different screen sizes in order to reduce time and costs. Based on my experience, I recommend:
MobiReady (Mobile Site rating, Open Source)
MobiReady is a free tool for developers, designers and marketers to test their website performance on mobile devices.
The tool provides free analysis and reports, allows you to store and compare results, and gives access to the mobiReady API in order to expose the tools on a specific environment.
BrowserStack (Cross Browser Testing, Commercial)
BrowserStack is a tool that allows you to test your web applications and websites using different web browsers in a live environment. It’s not screenshot-based, so it allows for full interaction with web browsers under test.
CrossBrowserTesting (Cross Browser Testing, Commercial)
CrossBrowserTesting lets you, as the name implies, verify your applications on various devices and web browsers, such as iOS, Android or Blackberry devices selecting the browser and device and entering the site URL.
ScreenFly (Screen Size Testing, Open Source)
Screenfly is another emulator tool to test web applications, websites and prototypes with different screen sizes and device profiles by only entering the site URL.
Mobile Phone Emulator (Web Emulator, Open Source)
The mobile device emulator makes it easy to test your websites and web applications with different screen sizes. This tool allows you to select various device profiles and screen sizes and shows the results by only entering the site URL.
Responsive (Responsive Design Testing, Open Source)
Responsive can be used to test websites and web applications for different screen sizes to verify responsive designs and similar design practices often used for mobile devices. You only need to enter the site URL.
ProtoFluid (Responsive Design Testing, Open Source)
ProtoFluid is a tool that allows you to test fluid layouts and responsive designs, which are often used for web applications and websites specifically built to work well on mobile devices. You only need to enter the site URL.
ANDROID TESTING TOOLS
Android already comes with useful testing classes as part of the standard SDK and class library (also listed below), but there are a couple of additional useful projects available to unit test your Android app code and libraries.
TestDroid (Automation, Commercial)
TestDroid is a test automation tool and service specialized in Android app testing. The toolset comes with an application to record user actions and build automated tests.
It is particularly useful for mobile app testing, mobile game testing, enterprise mobility, and mobile web testing.
Robotium (Automation, Commercial)
Robotium is an Android test automation framework that has full support for native and hybrid applications. Robotium makes it easy to write robust automated black-box test cases. It has a recorder so you can easily save all of your tests.
Scirocco (Automation, Commercial)
Scirocco is a UI test automation tool for Android. It’s able to perform tests on several devices and make test reports with screenshots while testing your apps.
MonkeyRunner (Automation, Commercial)
MonkeyRunner is a program that runs on your Android emulator or device, and generates pseudo-random streams of user events such as clicks, touches, or gestures, as well as a number of system-level events.
3 KEY iOS TESTING TOOLS
By using the following tools, you can more easily evaluate your web applications designed for iOS devices (iPhone & iPad), or automatically test your iOS apps.
iPad Peek (Web Emulator, Open Source)
iPad Peek makes it easy to test your web applications, websites and prototypes using an iPad interface, selecting the device and entering the site URL.
For best results it’s recommended to use this tool with Safari or another Webkit-based browser.
Appium (Test Automation, Open Source)
Appium is an open source test automation framework for use with native, hybrid and mobile web apps.
It drives iOS and Android apps using the WebDriver protocol.
TestStudio (Test Automation, Commercial)
TestStudio provides a complete test automation solution for a wide range of technologies. It tests desktop, web and mobile applications.