Home » Testing and Debugging

Testing and Debugging


Testing is a process of finding bugs or errors in a software product that is done manually or automated by tester.

Testing is a process that can be systematically planned and specified. Testing can be done at all stages of module development: requirements analysis, interface design, algorithm design, implementation, and integration with other modules.


Debugging is a consequence of a successful testing.

Debugging is a process of fixing the bugs found in testing phase. Programmer or developer is responsible for debugging and it can be done by only manually.

The debugging process begins with the execution of the test case. The debugging process will always have one of the two outcomes:

  • The cause will be found and corrected.
  • The cause will not be found.

Methods of debugging

  • Simple method of debugging is to place print statements throughout the program to display the values of the variables. Once the location of an error is identified and the error is corrected, the debugging statements may be removed.
  • Second process is deduction. The location of error is arrived at using the process of elimination and refinement.

Difference between Testing and Debugging

Testing Debugging
1.      The purpose of testing is to find bugs and errors. 1.      The purpose of debugging is to correct those bugs found during testing.
2.      Performed by testers 2.      Performed by developer or development team
3.      Can be done manually or automatically 3.      Can only be done manually
4.      Most of the testing can be done without design knowledge. 4.      Debugging can’t be done without proper design knowledge.
5.      Can be predefined when starting testing. The test result could be predicted 5. Start with unknown conditions and it is hard to predict the result
6.      Find the programming failure 6. Demonstrate that it’s only an unattended small mistake

Leave a comment

Your email address will not be published. Required fields are marked *

‘C’ Practical

  1. To get fomiliar with the structure of a ‘C’ program and print “Hello World!” on computer screen.
  2. To perform addition, subtraction, multiplication and division operations on two integers.
  3. To use unformatted 1/0 functions (getchar() and putchar(), gets() and puts()).
  4. To use scanf() function to read integers (%d, %i, %o, %u, %x), characters (%c), floating point numbers (%f, %g, %e), strings (%s, scanset).
  5. To use printf() function to format and print output (%d, %i, %o, %u, %x, %e, %E, %f, %g, %c, %p, %c, %s, %n)
  6. To change width, precision and alignment of the output of printf().
  7. To perform and, or, not, exor, left-shift and right-shift operations on integers.
  8. To check whether a given integer is even or odd (if … else statement).
  9. To write month name corresponding to a month number (switch … case).
  10. To check whether a given integer is prime using while loop.
  11. To reverse the digits of a given positive integer using while loop.
  12. To generate the multiplication table of a given integer using for loop.
  13. To generate first n terms of Fibonacci series using do-while loop.
  14. To compute factorial of a given integer using for loop.
  15. To compute sum of elements of a one dimensional integer array.
  16. To find the largest element in a one dimensional array.
  17. To perform matrix addition and matrix multiplication using 2-D arrays.
  18. To convert the alphabetic characters of a string to uppercase.
  19. To find the length of a string.
  20. To use Standard Library String Functions (strcat(), strrev(), strcp(), strcmp())
  21. Writing a function to find sum of two integers.
  22. Writing a function to swap value of two integers (call by reference).
  23. Writing a function to compute factorial of a given integer (using recursion).
  24. To read and print multiple data items (roll_no, name, branch, semester etc.) pertaining to an individual student.
  25. Demonstrating the use of union
  26. Demonstrating the use of address and dereferencing operators
  27. Performing pointer arithmetic to manipulate an array
  28. To read the contents from a file and display it on screen
  29. To read names and addresss of persons and write them into a file.
  30. Write a program to read the contents of two different files and write it into the third file.