Testing Apps

It’s impossible to develop a non-trivial app without making any mistakes. Broadly, there are three common problems in code:

bullet_2c.tif The code works, but the app doesn’t do what a typical user expects it to. This is a design problem.

bullet_2c.tif The code doesn’t work. You expect your code to do something, but it does something else. A feature may not work as expected, or it may not allow the user to do what they want to.

bullet_2c.tif The app crashes. Technically, this is an example of code not working. But the results are more obvious and damaging.

User-testing your app

A UI isn’t just an interface to your app; it also guides the user’s expectations of your app. When the features of an app match a user’s expectations, the design is called “intuitive.” The user makes little or no conscious effort to find critical features, understand them, and benefit from them.

Avoiding unintuitive design

Hidden features, features that are difficult to access, and features that work in an unexpected way are all “unintuitive.” If the UI is overly complex and has too many unrelated options, users won’t enjoy working or playing with your app. They’ll also be less likely to recommend it to others.

Note that intuitive design ...

Get iOS App Development Portable Genius now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.