You had a brilliant insight and you decided to develop the idea as an app. You have a team of developers efficiently developing the app. But how can you be sure of the quality of the codes? How do you test it? Manually it is a very time consuming process and is almost impossible. And when all the codes are written and the app is ready – how do you then get rid of all the bugs?
With the advent of time more and more tools are available for project managers, developers and entrepreneurs that help them stay on the top of the app development journey as it happens. For app developers the most frustrating time is when the users install the apps on their smartphones and start complaining about the bugs. You rack your brains to find the bugs. You can either spend a lot of time (read weeks and months) looking for them or you can use the tools that help you find the standard breaches, bugs, potential bugs, duplications quickly with ease. Let’s look at a few of these tools that help in app testing.
Your app gets ready after months of hard work. You send your apps for beta testing to your teammates, friends and relatives. They use the app and soon the app crashes. No one knows how and why it crashed. To solve this mystery TestFairy pitches in. When you send your apps to be tested at TestFairy , it provides you a video of the tests done. It video records the use of the app – the tester’s actions. If your app crashes, the developers can see the event and have logs and screenshots to refer to – to understand what really happened. It is then easy to understand the actions that led to that crash. No need to go on a witch hunt for weeks – TestFairy decodes the app tests for you in a short time.
TestFairy can test videos for android apps, iOS apps and other platforms. It can test native apps and other apps built on platforms such as Adobe Air, PhoneGap, Xamarin and Unity.
SonarQube is an open platform that helps manage code quality of the applications. It is a web based application. It tracks metrics of the code and provides inputs about the structure. It can cover more than 20 programming languages like Python, C/C++, Cobol, Swift and Erlang through plugins. It enables one to see bugs and breaches as they happen on the daily basis. It has developer cockpits which enables each developer to identify their own codes – the ones they developed and contributed to the project and encourages them to self manage the quality of the codes by fostering best practices. For testing android applications you need to install SonarQube on a webserver and install sonar-android plugin. For testing iOS applications, dedicated community plugin Sonar Objective – C plugin is used. The project is analysed through Maven or SonarQube runner.
# 3 Crashlytics
It is the lightest crash reporting solution. It provides deeper insights into the crash reports it prepares for you when testing your iOS and android apps. It is a much loved cloud based tool. The developers love it because the Crashlytics SDK is very small. In fact the size of its code (About 75K) is smaller than the size of the icon used in the apps. After Crashlytics was acquired by twitter, they went ahead and developed a product called ‘Answers’ – which had the insights from Crashlytics on dashboard.
“Crashlytics can take 5000 crash logs and distil them to 23 issues and then just the ones that you actually want to fix,” said Wayne Chang, co-founder of Crashlytics in an interview with ReadWriteMobile.
It works by writing a simple line of code that activates its lightweight SDK. The SDK then taps its cloud solutions that run crash reports with the help of Amazon Web Services and return with the report carrying the offending line of code that is making your app crash. It can analyse both android and iOS apps.
#4 Keynote Mobile Testing
Keynote helps you test mobile applications in agile or hybrid agile environments. With the help of Keynote’s cloud library you can test your apps on real devices located in major cities all across the world over real carrier networks. Keynote Device Anywhere which is now known as Keynote Mobile Testing helps the developers immensely by providing immediate access to robust toolkits and most importantly a broad pool of devices and carriers from all over the world for live testing. A developer can access a device and a carrier from anywhere in the world, push buttons, tap -touch screens, simulate open, close and flip activities of the phone and test his app while sitting at his workstation by using Keynote’s client software. It helps in testing and monitoring end-user experience of the apps across multiple devices and users.
You can use Keynote to test both Android and iOS apps.
Ubertesters provides cloud-based tools to manage beta testing for mobile applications. It has bug tracker support of Jira, RedMine, Youtrack , HPQC and Mantis. Developers can export all the issues testers find to any one of these bug-tracking systems. Testers can work offline and submit bugs even without internet connection.
It is a freemium tool that you can use for an organised testing process. It offers features like in-app bug editing, user feedback reporting, Over-the-air (OTA) App distribution, in-the-wild app testing services supported by its crowdsourced global community of professional testers. It also offers access to professional testers. You can enable and disable specific builds for testing. New builds are sent to testers over the air. Testing sessions can be tracked in real time from Ubertester’s dashboard.
You can use Ubertesters to test both iOS and Android devices.
Testflight is an online mobile application testing service. It also offers over-the-air installations. It was acquired by apple and is now offered to iOS developers. iOS developers who sign up with the service distribute applications to internal and external beta testers. These beta testers then send their test reports, crash reports, remote logs and feedback about the application to the developers. Testers can be invited by developers using ‘iTunes Connect’.
Upto 25 internal testers can download and test the application build through Testflight. Each tester of your team can test your build on upto 10 devices. Through the App Store however, you can invite up to 1000 external beta testers.
World’s best developers of iOS, Android, OS X and Windows phone rely on HockeyApp. It is a class leading service for app distribution and for mobile crash analytics. It was acquired by Microsoft in 2014.
Hockeyapp is free for the first month. Thereafter you need to pay $10 per month for usage. The storage is unlimited. You can have access to as many developers and testers you want. With Hockeyapp you have access to a whole community of developers and testers who can help you build your app in the best way possible.
Integrate an open source library (Quincykit for iOS and Hockey Kit for Android) into your app and it will be easier for you to go through the crash reports. All crash reports for a particular crash are grouped together so that the hows and whys of the crash are easy to decipher.
Hockeyapp helps you with distribution. You simply need to upload your application on the server for beta testers and it reaches the user’s device.
It provides you detailed analytics on the builds being tested. You can get an overview of the tests and you can know how each version of your app is doing. You can get details on testers such as how they went about testing your app, how much time they spent on testing your app – all the minutae you need to judge the incisiveness of the reportage.
Selendroid is the leading test automation software which tests the UI of native and hybrid Android Apps and mobile web. Client API tests are written using Selenium 2. Selendroid supports plugging of hardware devices and it can interact with multiple Android devices at the same time – both with emulators and real devices. It has full compatibility with the JSON Wire Protocol/Selenium3 ready. It provides full integration as a node into Selenium Grid for scaling and parallel testing
App development is a buggy journey. There is no smooth and easy way out. There will be a lot of times the team developing the app will stare blankly at the screens-frustrated. There are tools that can help you with the bugs your app has and can help iron out key UX issues before launch. We have discussed about some more app testing tools here and here. You can also test your apps on AWS device Farms. Be smart and go for the right tool. Which tool is the right one for you? Well, check the features, read more, do a detailed research and then zero-in on the tool. What we have here is the basic intro of some of the best mobile testing tools that are available for you in the markets. Here’s hoping you find the right tools to develop and test your builds. Wishing you bug free apps. Happy testing.