What is the difference between testing & debugging?

karthika qpt's picture
karthika qpt asked on March 30, 2016 - 2:16am | Replies (5).

What is the difference between testing & debugging? Share your knowledge about testing.

Tags: 

5 Answers

Ava Rivard's picture

 

Debugging is a stage of software development. On this stage the bugs are detected, localized, and eliminated. http://testmatick.com/software-testing-glossary/debugging/ Here’s one more definition.
Testing is a process of checking the compliance between actual and expected program’s behavior.

 

Ranjit Shankar's picture

"Testing activity is done by a team of testing experts to find and locate a defect, but debugging is not carried out by a team of testers (or testers never fixes the defects) instead it is done by the development team (or developers) to fix or remove those defects after getting the test report from the testing team..." I hope this simple explanation helps you understand the difference between testing and debugging... I suggest you this page to understand how testing activity improve the performance and reliability of IT applications... Cheers!

Ananda  Verma's picture

Testing: Basically, testing is a process of exploring the system to find defects present in the software, and not only that, this process has to locate the defects and define what will happen once these defects occur. This process is performed in the testing phase by testing team, and after this phase, they will report to the developer team to debug.

Some popular testing tools: SeleniumKatalon StudioTestComplete,…

Debugging: Once Development team received the report from the testing team, they will start debugging. The purpose of this phase is to locate the bug and rids the software of it. It is a one-off process and is done manually. In this process, a special tool called debugger is used in locating the bugs, most of the programming environments have the debugger.

Some popular Debugger tools: WinDbgOllyDbgIDA Pro,

 

 

Testing
Debugging

Performed by testers
Performed by developer or development team

Can be done manually or automatically
Can only be done manually

Can be predefined when starting testing. The test result could be predicted
Start with unknown conditions and it is hard to predict the result

Find the programming failure
Demonstrate that it’s only an unattended small mistake

Could be done automatically by using automation testing tools
Automatic debugging of software is still a dream of programmers

The purpose is to find the bug
The purpose is to find the cause of a bug

 

Typical Testing & Debugging workflow

 

Original post:  Differences Between Testing and Debugging

Alisha Henderson's picture

Hello buddy,

Here is the difference between testing and debugging:

Testing:

  • The testing main objective is to find a bug.
  • Much of test execution and design can be automated.
  • It can usually be performed by an outsider.
  • Most of the testing can be performed without any design knowledge.
  • Testing as executed must strive to be expected, dull, forced, rigid, and inhuman.
  • It is a demonstration of bugs or apparent accuracy.
  • Testing can and must definitely be planned, designed, and scheduled.

Debugging:

  • Debugging main work is to find a cause of an error.
  • Automated debugging is still a dream for programmers.
  • It should be performed by an insider.
  • Debugging is not possible without detailed design knowledge.
  • Debugging needs intuitive leaps, experimentation, conjectures, and some freedom also.
  • It is always employed as a deductive process.
  • It is the programmer’s explanation.
  • The process for and period of debugging cannot be so compelled.

Regards

Automated Software Testing Services

james lees's picture

Testing: Fundamentally, testing is a process to check if the system is working same as it was supposed to do, and not working as it was not supposed to do. It is done by the tester to identify the defects in the system (actual result of test case execution is not matching with expected result). It can be done using Manual and automated way. The issues are logged against the all failed cases and communicate to the dev team for debugging and fixing. After the bug fixes then tester retest the bug and checks if the issue is no more exists. You may interest in – Defect Life Cycle.

Debugging is the activity performed by developers to fix the bug found in the system. This is manual step by step unstructured and unreliable process to find and removes a specific bug from the system.

It is done by the developers to fix the defect in the system. Based on the defects reported, the developer starts analyzing the root cause of the defect to make system defect free. The developers need to fix the code to make actual result same as expected result. With the help of details added in the defect developer follow steps mentioned and check the loopholes in the particular code area. They may use a different tool for debugging. On fixing the defect developer send back the defect to a tester for retesting.

I think you understood what is the basic difference between testing and debugging.

StickyMinds is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.