Software Testing defined as an activity to assess whether the actual results match the expected results and thereby ensure that the software system free from defects. The process of testing involves execution of a software component or component to analyze one or more properties of interest.
Primarily, software testing also helps to identify errors, gaps or missing requirements in contrary to the actual requirements. This can be either done manually or using automated tools. Some prefer saying testing process as a White Box and Black Box Testing. Also, testing of software means Verification of Application Under Test (AUT).
We will be discussing in length about the need to test software, testing terminology, test organization, software framework, test framework, test automation for web applications etc.
Types of Testing
Typically Testing is classified into three categories –
- Functional Testing
- Non-Functional Testing or Performance Testing
- Maintenance (Regression and Maintenance)