Mobile development is not easy. A lot of platforms that change a lot, many different programming languages and tools. And of course a slew of new devices each year, in particular on the Android platform.
Testing is even harder, arguably also more important. Native apps crash completely on an error, not just one page. You have less screen real estate. Users have less time to use your app. And there are so many tools to choose from. So let me ask a few questions: what to test? And when are tools appropriate, and when do you need users?
The list of different kinds of testing we have here at Mobtest is long but a few first ones:
- technical test: does the app run without crashing?
- functional test: does the app do what it is supposed to do?
- usability test: do users understand how to operate the app?
- compatibility test: does the app run on all hardware required?
A first statement would be, that when implemented right software tools should be cheaper and faster. But what do tools detect, and what do users find? Tools are only as good as the people that operate them. Tools can detect imperfections in your code, execute tests that you have written yourself. Can they detect things you hadn’t though about?
Probably tools cannot detect all. In particular usability testing is by definition user testing. So it seems using both tools and users to test your app is the best way to go. What do you think?