Early testing ensures quick detection of bugs and reduces time and energy required to perform subsequent tests. It also builds confidence in developers to include new features in the product.
Client Needs are covered by Acceptance Testing.
Requirements are handled by End-to-End Testing.
Software Design is ensured by Integration Testing.
Code is checked by Unit Testing.