Functionality testing, deriving from the functional requirements
of the software is the basis for system testing. This helps you in testing if the
required functionality is working as per the specifications and if the expected
result is attained.
Integration testing
Testing combined parts of an application to determine if they function together
correctly. This type of testing is especially relevant to client/server and distributed
systems.
Migration testing
Testing a converted software application /database from one IT platform to another
IT platform or to another software application.
Performance, load, and stress testing
Testing that is performed, from one perspective, to determine how fast some aspect
of a system performs under a particular workload. It can also serve to validate
and verify other quality attributes of the system, such as scalability and reliability
Regression testing
The selective retesting of a software system that has been modified to ensure that
any bugs have been fixed and that no other previously working functions have failed
as a result of the modifications and that newly added features have not created
problems with previous versions of the software