Testing is an integral part of software development lifecyle. It plays a vital role in the development of a wide range of desktop and web applications. Quality Assurance (QA) ensures that the final product meets the requirements and expectations of end users.
Below are the steps that leads to successful QA:
Preparing Test Cases
Test Cases are detailed steps that test a feature or a part of a feature in an application. Different test cases are prepared to test different modules or functionalities, so that it covers each and every aspect of a particular application and provide standardization.
Test Cases should contain:
- Test Purpose – Functionality including UI interface of the application to be tested.
- Steps – Steps to be executed while testing.
- Expected response and other additional data like list of variables and their values, data files,etc.
Documentation
Proper documentation should be prepared while executing test cases describing:
- comparison of expected response with actual one
- whether the test case passed or failed
- date and time stamp and
- special comments
Execution of Test Cases
When test cases are executed, a large number of bugs, errors, issues, etc. are encountered. A bug is an unintended mistake done during coding which causes the program to give unexpected results in some cases.
Bug Reporting
There are various online bug reporting/issue tracking systems available e.g. Bugzilla, Jira, FogBugz, Flyspray etc.
These tracking systems help to:
- Add issues.
- Receive notifications on issue updation or completion.
- Assign people to issues.
- View similar or related issues.
An Effective Bug Report should contain:
- Environment – Browser and Platform.
- Name of the Test Case.
- Type of Severity – Blocker, Critical, Major, Minor, etc.
- Steps that caused the error.
- Screenshots, if required.