Testing vs Debugging
What is Software Testing?
Testing involves identifying software bug/error/defect without its correction. Usually professionals with a background of quality assurance are involved in the process of bugs identification. This process is performed in the testing phase.
Testing involves identifying software defect without its correction.
Debugging as deep process
Debugging involves identifying, isolating, and fixing the bugs/problems. Developers who code the software carry out debugging in order to encounter an error in the code. This process is a part of Unit Testing or White Box Testing. Debugging can be performed either while conducting Unit Testing, i.e. development phase or while fixing the reported bugs.
Debugging is deeper process than the Testing. Debugging involves identifying, isolating and fixing the bugs.
Those two processes are similar, but the first one mentioned is carried out by QA team only. Debugging is more typical of developers teams as dev-testing can not be canceled. A good developer will always make sure that his code works high-level and there are no obvious bugs that can cause any doubt in his competence. Final testing is always left for the QA team. In a well-matched team QA and DEV members can in advance agree on responsibility areas for the sake of quality and make every stage of testing clear and accurate.