Most common software bugs caught during QA testing
We all make mistakes, which is why it is always good to have someone double check your work. In software development, Quality Assurance plays a vital role. QA will not only help you deliver high-quality product to your customers, but you’ll also gain a better understanding of your user base. STRV’s dynamic QA team tests projects on a variety of different devices, platforms and browsers in an effort to, quite literally, take our clients’ apps to their breaking points.
We’ve compiled a list of common bugs that appear in web and mobile apps to make them easier to spot when you are developing your own app.
VALIDATION FIELDS
Errors can crop up if you enter invalid characters into your app’s validation fields or exceed the maximum field length. These bugs occur often and are mostly assigned low priority, as they are generally not that severe, but in some cases, it might mean life or death for your app if you have wrong or missing field validations.
It’s good to limit the number of characters allotted to fields like ZIP code, telephone number, name, city, state, etc.
BROWSER COMPABILITY
Another very frequent problem is an app’s browser compatibility. With this in mind, our QA team tries to test on as many different browsers as possible, including older versions. We take user experience and preferences into consideration when deciding which browser(s) to give priority to during testing. From our personal experience, the most problematic browsers are Internet Explorer (different versions) and the older versions of Safari.
PAGE LAYOUT AT DIFFERENT SCREEN RESOLUTIONS
As we stated earlier, it’s important to know your users. Find out what browsers and devices they are using the most and focus on these devices during testing. We have seen problems arise with certain types of screen resolutions for different apps. This can't be defined specifically, but this problem appeared when we recently tested a web app on a 4-inch screen.
DATE CONTROL
For apps that use age restrictions (the most common being dating apps), we have uncovered bugs related to date control, most commonly found in registration forms or in forms used for editing a user profile. In such cases, QA applies a boundary value analysis for better testing coverage. In terms of software testing, this means we focus on testing the boundaries between partitions. Put another way, if you are testing to make sure the date control is correct regarding a specific date, then you have to set up test cases that cover that date as well as the dates that precede and follow it. For example, if your date control is set at January 6, 1999, then you’d have to test that date as well as January 5 and January 7, 1999.
APP CRASH CAUSED BY BUTTON CLICK
This is a bug that QA testers will likely find in every mobile app they test. It is like a “time-bomb” hidden in your app, mostly behind buttons that are not used so often by users. But when the button is pressed, it can severely mess up the app’s functionality. Buttons that are not crucial for the running of the app can often be overlooked by developers. Such buttons might be found, for example, in an app’s account setting, profile editing mode or used for adding pictures to user profile.
COMMUNICATION ERRORS (SOFTWARE - END USER)
If your software is not “user-friendly,” that’s a problem. Anything that your user needs to know in order to use your app should be accessible on the screen. Keep in mind the importance of having a useful menu on the homepage as well as a “help” section and make sure it is clear to your user why he or she should use your app.
TIPS & TRICKS
Here are a few things to keep in mind during testing to help prevent bugs:
-
Use a testing coverage matrix. This is kind of a checklist which makes sure that all the required functionality is covered on every browser, screen resolution, platform, etc. Use Google Analytics to better understand your user base and create a more useful coverage matrix.
-
Employ the FURPS model, which takes into consideration all factors of software quality -- functionality, usability, reliability, performance and supportability.
-
Think ahead. Anticipate bugs that can appear in your mobile/web app after you fix an existing bug, create a new feature or release the app. Have a regression test set ready to make sure the required functionality of your app is covered.
You might also like...
Engineering
STRV Academy – An Inside Look
Looking to master the latest frameworks, like React, Node.js or Swift? In just a few weeks, STRV Academy’s practical courses teach what would otherwise take months of self-study to learn.You will receive tailor-made lessons, code reviews, h...
Engineering, Android
MVI — another member of the MV* band
Every Android developer has heard about MVP and MVVM presentation patterns. Therefore, without even trying, we can easily explain the meaning of the “V,” “P” and “VM” in these acronyms. “V,” as in View, represents everything visible on the ...
Product, Inside STRV
What’s the Plan? Ask Your Product Manager
Where there’s a need for intensive organization and fearless leadership, you’ll find a product manager. At STRV, there’s a PM paving the way from the beginning. From discussing an idea with a new client and establishing the right approach, ...