A form of black box testing, system testing is used to check the compliance of the product's working as per the user expectations. The system is tested as a whole which helps in finding bugs from all interfaces and modules.
In this form of testing, the software product is tested by combining all of its unit tested modules in the form of aggregates.
|System testing||Integration testing|
|1. Test to check if the product is performing as per user expectations and the required specifications.||1. Performed to check if all the system modules interact effectively as a group.|
|2. It is a high level testing.||2. It is a low level testing.|
|3. Performed after integration testing.||3. Performed after unit testing.|
|4. Covers both functional as well as non functional testing for the evaluation of different parameters such as usability, load testing, etc.||4. Covers only functional testing to judge the quality obtained from the interaction of two modules.|
|5. Since no knowledge of internal code structure is required, system testing can be considered a kind of black box testing.||5. It can be considered both as black box as well as white box testing.|
|6. Test cases are developed in such a way as as to visualise the performance of a software in real life situations.||6. Test case are developed, simulating the interaction between more than one module.|
|7. System testing is the domain of testing professionals only.||7. Integration testing can be performed by not only the testing team but developers too.|
|8. Defects or errors found via system testing are considered as flaws of the system.||8. Defects or flaws detected through Integration testing are thought of as bug unique to the concerned module.|
|9. Different types of system testing are:
||9. Different types of integration testing are:
|10. It is followed by Acceptance Testing.||10. It is followed by System Testing|