The systems science Institute at IBM did a study which found that “the cost to fix an error found after product release was four to five times more than one uncovered during design and 100 times more than one identified in maintenance phase”
Quality Assurance Of Websites
Hence there is a need for a great Quality Assurance team for your website. Quality assurance is done in order to discover errors or mistakes that may not have been discovered during the development or design phase. However, it is important to differentiate between QA and testing. QA is done at the deployment stage of the website and testing is done before that in the development and design phase.
Importance Of QA Testing
1.) If QA testing is not done properly it might have an adverse impact on the brand and might cause great disrepute.
2.) Can prevent dire consequences like a critical security vulnerability.
3.) It saves both time and money for the business.
How To Do QA Testing?
QA tester has a lot of responsibility on his shoulders and doing QA testing is not a cakewalk.
In order to effectively do QA testing, one needs a refined process flow chalked out that needs to be followed throughout the testing phase. Factors to keep in mind while chalking out QA process flow are:
i.) Audience: Think in terms of the audience for instance whether it is a mobile audience or desktop audience or which browser is likely to be used most likely. So a process must be chalked out keeping in mind all circumstances and all devices
ii.) Estimated number of users: You should have a rough figure of the users and potential users at all times.
iii.) The risk involved: You need to be aware of the amount of risk involved in the type of action your website will perform for instance if user data is collected you need to keep in account privacy norms and laws or if you are having financial transactions you need to check for security.
QA Best Practices
1) Define the user who will be using the product
2) Maintain and follow a thorough checklist for every testing phase.
3.) Test using staging sites (a site that mimics a real site)
4.) Schedule the time needed for testing
5.) Test at the earliest
6.) Prioritize bug fixes depending on the criticality
7.) Automate where possible
8.) Establishing a good rapport between the testing, design, and development team
1.) Functional Testing:
To test whether the features of your site are functional.
Aspects to look into for functional testing:-
i) Dropdown, button, checkbox, input fields, and others
ii) Site process flow
iii) Sites links and cookies
iv) check for syntax errors
2.) Performance Testing:
To test whether the website can handle the heavy spikes in traffic and still perform.
Aspects to look into for performance testing:
i.) How the site handles spikes in traffic (stress test)
ii.) How the site handles increased workload (load test)
iii.) How the site handles normal workload (stability test)
iv.) How the site handles multiple user logins (concurrency test)
v.) How the site handles an increase in data volume (volume test)
vi.) How the site handles a continuous increase in workload (endurance test)
3.) Security Testing:
Things to check in Security testing are:-
i.) can passwords be hacked
ii.) Does the form have captcha
v.) Time is taken to make payment
vi.) Any security breach endurance
4.) Compatibility Testing:
How the site looks on different devices and platforms
1.) How do the images look?
2.) Is the NAP accessible
4.) How it works on different browsers and screen resolutions
5.) Content Testing:
Check how the site’s content looks and whether it is consistent with the Brand.
In the look of the site check for fonts, typos, grammatical errors, no generic images, do the videos and other contents have copyright infringement, logical flow of information, images are optimized with alt tags, and other miscellaneous issues.
QA is a very critical part of website development. Errors or bugs will keep coming as long as the site is active so it is very important to routinely QA test one’s website. It is important to chalk out the QA process before testing.