Android Applications Manual Testing Guide (Basic-I)

Nishchal Raj
5 min readSep 3, 2019

--

There is a reason this guide has been kept basic. In my experience of developing and testing, I came across some apps that lack the basic qualities which wouldn’t allow it to grow in the market it is for. Now, there should be some basic knowledge for the testing of any application that is being delivered, when it comes to the developers testing their own apps, then this alpha testing should help them resolve most of the issues or flaws from both UI/UX and functionality PoV.

This blog will help with the points that should be kept in mind while testing the application before sending it for beta testing or even launching it to the stores. The testing, as stated above, includes both UI/UX and functionality PoV.

UI/UX:

The first and foremost, proper alignment of the fields and the buttons in every activity.

Suggestion: Use constraint layout if it’s correctly known to you otherwise a mix of Relative and Linear Layout

Use of respective icons to indicate the features in the activity. Having this might less the work of always writing what to do, user gets the idea from the icon itself that what is being conveyed.

Suggestion: Material Icons , Vector Icons and Lot more

Unnecessarily use of <View/> as a separator/divider. Sometimes, it is needed to separate the two input fields by a(n) (un)colored line.

Suggestion: Look for a property of the TextView or EditText or any other you are using, they may have some tint which will save you from the unnecessary use of any separator and will eventually decrease the line of codes.

When it comes to “Sign In” or “Sign Up”, see if the password visibility has been controlled by an icon (e.x. eye). The user may wants to see if the entered password is correct or not, so giving the visibility is good.

Observe carefully that every screen has a back functionality other than the built-in for smartphones, it’s a good practice.

Suggestion: Try to give a back (arrow) button at the top or any link to the last page through some button or text, as per necessary otherwise this can be skipped. Like, if the user has signed out, then no need to allow back there, similarly if the user just logged in then no need of going back there too.

Color of the text fields/buttons/icons should properly match the theme of the application otherwise that won’t be attractive.

Suggestion: Never make the screen look like rainbow, as in, texts of some color, input fields of another color, buttons of any other color. Try shades of the same color if needed. BTW, you can use rainbow theming if asked. :)

Unnecessary borders that catches user’s sight and deviates him.

Suggestion: If there’s Yes and No type response then, make “Yes” darker and “No” outlined, that will be a good practice.

If there is a splash screen, then the animation or the timing of different components in it should be proper, look for overlapping of the components or any lagging in them.

Suggestion: Carefully use the dpi and separate the components accordingly, this makes the lagging go away. The animation and the timing should be such that any part of the splash screen doesn’t gives an ugly look. Like, when components are entering from right,left and down, they should not overlap at any point, just imagine how bad it would look.

Functionality:

The introduction screen of any app has a Next, Skip, Begin or any similar options, the use of these should be careful.

Suggestion: Like, on the first intro screen, it should be Next and Skip, similarly on the last on there should be Begin, then if the user goes to the second intro screen it should again show, Next and Skip options. These are small details that make a good developer. Play with the other options similarly.

Validation plays a great role in the application. There are many points in an app where validation is needed.

Suggestion: Though there are validations on the server side, but not always, so neither believe the users(they can input anything) nor the backend developers(they may miss something), select a proper password validator, fields where only numbers or alphabetical characters are allowed, respectively validate them, also it would be great if symbols and special characters are taken into consideration for this because they are powerful in the long run. Either allow them carefully or never allow them and validate to a great extend.

Navigating to the proper screens and likewise changing the header and sub-header or title and sub-title.

Suggestion: Test the application to an extend that you get to know its proper navigation. This helps in finding out if something is missing or not going the correct way.

If a new activity is launching for any small task it is of no worth actually.

Suggestion: Using the activity for any small work is actually not the best practice, fragments are better to use if we need the same activity to hold some more screens as per the requirements, and using bottom sheets and custom dialog boxes is a good move.

Look for unnecessary toasts, that is set when developing the app.

Suggestion: Keep an eye on unnecessary messages that pop up while testing, sometimes they disclose some important message, raw response from the endpoint, or any exception error. Anything it can be, it’s better to remove them before production. Same goes for the logs. [We’ll discuss about logs in next part]

App size is more than what it looks like. If there are not much in any app and it’s size is more than expected.

Suggestion: It’s better to get into the codes and look for any unused components or looking for the integration of same components always, this will give road to make it modular .

There can be crashes when asking for permissions or after getting into an activity. These happen when no data is available to process.

Suggestion: Handling the unavailability of data is an amazing thing, the crashes stop. Also, these crashes convey negative impressions to the user, so better to handle the exceptions in an extra ordinary way. Look for null and undefined values, properly handle the permission, check these twice if needed.

For now, these basic points should make the testing and developing a better app easier. In the next part we will move on to some more in-depth points to remember while testing.

Do appreciate if this helped in anyway. Happy testing!

--

--

Nishchal Raj
Nishchal Raj

Written by Nishchal Raj

Co-Founder @ Paisa App | Technical Speaker @ ALCCalabar - Google I/O '22 Extended-BLRKotlin #30 | Ex-GDSC Lead | Writer | Researcher | @thenishchalraj

No responses yet