Unit Testing In computer programming, unit testing is a procedure used to validate that individual units of source code are working properly. A unit is the smallest testable part of an application.
Integration Testing Integration Testing is the phase of software testing in which individual software modules are combined and tested as a group and verify proper communication between the modules.
Interface Testing Interface Testing is not focused on what the components are doing but on how they communicate with each other, as specified in the "System Design". The tests are organized to check all the interfaces, until all the components have been built and interfaced to each other producing the whole system.