Unit Testing is defined as a type of software testing where individual components of a software are tested.
Unit Testing of software product is carried out during the development of an application. An individual component may be either an individual function or a procedure. Unit Testing is typically performed by the developer. It is a testing method using which every independent modules are tested to determine if there are any issue by the developer himself.
Integration testing is the process of testing the interface between two software units or modules. Its focus is on determining the correctness of the interface. The purpose of the integration testing is to expose faults in the interaction between integrated units. Once all the modules have been unit tested, integration testing is performed.
Difference between Unit and Integration Testing:
|Unit Testing||Integration Testing|
|In unit testing each module of the software is tested separately.||In integration testing all modules of the the software are tested combined.|
|In unit testing tester knows the internal design of the software.||In integration testing doesn’t know the internal design of the software.|
|Unit testing is performed first of all testing processes.||Integration testing is performed after unit testing and before system testing.|
|Unit testing is a white box testing.||Integration testing is a black box testing.|
|Unit testing is basically performed by the developer.||Integration testing is performed by the tester.|
|Detection of defects in unit testing is easy.||Detection of defects in integration testing is difficult.|
|It tests parts of the project without waiting for others to be completed.||It tests only after the completion of all parts.|
|Unit testing is less costly.||Integration testing is more costly.|
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.