Testing should begin from the inception of the project. Once you get the requirements base lined, System testing plan and test case preparation should start. It also helps in exploring any gaps in the functional requirements.