Software Testing is an investigating process in which various run time aspects are matched with required aspects. Testing can be further classified into many types. As development covers a large domain, similarly testing also covers a large domain. Types of Software Testing are discussed below in brief:
Types of Software Testing
Testing is based on the internal logic of coding part. Glass box testing is also one of the popular names for white box testing. This part of testing is mainly performed by developers who turned tester with experience.
Internal system design or coding part is not considered in this type of testing. Mainly various functionalities are checked.
As clear by name, testing is done whenever new functionality is added to the product. In this type of testing bottom up approach is used.
Unit Testing of individual software modules. This type of testing is performed by the programmer.
Functional Testing is focused on main as well as small components of functionality. This type of testing has nothing to do with the code of the application.
The entire system of complete application is checked. Black box testing covers system testing.
Regression Testing is performed whenever any change is made in functionality. There is always a chance that some functionality gets affected when we repair any other functionality. This test is mainly performed with use of any automation testing tool.
This type of testing is performed so as to check acceptance as per client requirements.
Load testing is performed so as to get assured that website or software is able to perform properly under load.
The application is tested by increasing load beyond certain specifications. The behavior of the application is noted under stressed conditions. It is tried to find out the point where the application fails.
This type of testing is performed on the end of the development team. Virtual user environment is created so as to check the application.
This type of testing is performed by various end-users. This type of testing is done just before the final release of the application.