Software testing is defined as an activity to check whether the actual results match the expected results and to ensure that the software system is Defect free. It involves execution of a software component or system component to evaluate one or more properties of interest.
Software testing also helps to identify errors, gaps or missing requirements in contrary to the actual requirements. It can be either done manually or using automated tools.
In simple terms, Software Testing means Verification of Application Under Test (AUT). This tutorial introduces testing software to the audience and justifies it’s importance.
Why is Software Testing Important?
Testing is important because software bugs could be expensive or even dangerous. Software bugs can potentially cause monetary and human loss.
Types of Software Testing
Typically Testing is classified into three categories.
- Functional Testing
- Non-Functional Testing or Performance Testing
- Maintenance (Regression and Maintenance)
Testing Category | Types of Testing |
---|---|
Functional Testing |
|
Non-Functional Testing |
|
Maintenance |
|
Note that not all testing types are applicable to all projects but depend on the nature & scope of the project.