So, test automation, quite the topic to discuss, especially when it comes to Android app testing. So much is dependent on automation today (too much, perhaps) that us, testers have no choice but to adjust to such an environment. New skills are required, new best practices emerge and moreover, automation tools pop up here and there, way too often to keep in focus with all of them.
It would be much easier if things are broken into consumable chunks. You may be into Android app testing, thus appropriate toolsets will be required tailored to deliver maximum value whilst Android application testing takes place. After all, there are unique programming solutions involved, as well as environments, development methodologies and coding tricks that fit well in apps based on Google’s top OS and are not used elsewhere.
Imagine yourself as Batman, when your automation tools and frameworks are your batarangs and other gadgets. You still rock without them as you are, well, Batman, but numerous tasks and saving the world is way easier if you have some solution that fits your situation perfectly.
To the Batcave!
- Our first tool worth Mentioning would be the well-known Appium: This solution actually works out well for both iOS and Android test automation. One more bonus: it’s free. WebDriver interface is what Appium uses for running tests. Java, Ruby, C# and other languages from the WebDriver library are supported. Thanks to the fact this tool may control Chrome on numerous mobile devices mobile websites and the browser may be tested with Appium. Weaknesses: a) XPath support (this is especially sad) is reduced on mobile devices, b) there are many complaints on insufficient reports the tool provides.
- Robotium: Surely this Android Automation tool cannot be misses as it is considered to be world’s number 1 solution for automating your android app testing. And it’s is also a free tool and it support includes both original and even sub-versions of the Android OS. Tests Robotium creates should be written in Java. By the way, this tool is also a great library of and for unit tests. Weaknesses: required time investments are enormous and test creation also requires lots of effort. One more thing worth pointing out that system software interactions are not entirely stable. Record and play functions are absent and you will not gain any screenshots from Robotium. Nonetheless, testers have already called the tool Selenium for Android.
- UI Automator: supports 4.1 and higher Android versions. This handy tool has the power to interact with pretty much all Android software products, system apps included. Scripts will reproduce and represent complex sequences on multiple actions taken by a user. By the way, external device buttons may also be simulated. This tool is so good it has even been elaborated by Google. Weakness: it works great when testing is taken slowly one platform after another and results are not as accurate if multiple platforms are being tested at the same time.