Unit testing is the test that verify the specific unit of the code. From the unit testing code coverage can be calculated to detect the code which is being delivered how much is actually tested by developer. As aim of unite testing is executing each line developed, Unit testing helps to detect the corner cases which in general will not be caught during the functional tests. There are various methods of unit testing automation for every language, to name a few Gtest/Gmock, junit, Cunit. In general unit test support comes along with programming language.
Why Unit Testing?
Unit testing, especially test driven development, is a design or implementation activity, not a testing activity.