Till now we have discussed Basics of Algorithm and Flowchartand Basics of Computer and programming.
In Current article we'll discuss the basics and types of Testing and debugging.
What is Testing?
Testing is an essential phase of Software development life cycle(SDLC).During programming we have to test each line so that our task is well accomplished.Testing is to find an error in program.AS Testing not give 100% result but it give us hint to find maximum error and increase the confidence of programmer.
Types of testing
- Verification testing
- Validation testing
Testing of each module is called verification testing.Module can be work for a day.work provided to one person,a single function etc.We can say that test each work simultaneously with programming.It is easy to check error by this process.
Testing of whole software or program is called validation testing.After completion of whole task when programmer test ,then testing is called validation testing.It is also important for success of software because it give feedback to programmer.But only validation testing is not enough ,it gives good result only when it occurs with verification testing.Because when we test software only at end then it become too complex to find error,it may or may not find error.Software can be failed.So testing is good when perform verification as well as validation both.
While programming is done and the code shows some error this is called a bug and the process of removing this is called debugging.Debugging next phase of SDLC after testing.By testing Tester find error in software then debugger remove that bug if possible ,otherwise minimize their effect on software.
First bug found by Debuggers
Techniques of debugging
Debugging is a process to resolve bugs or errors find by tester or it can also find error itself.There are several methods for debugging.
- By use of printf statement
- By Remote debugging
- Delta debugging
- Saff squeeze
- post mortem debugging
By use of printf statement
In this type of technique printf statement is used to trace the bug by trace the execution of flow.It means by this loops are tested ,is loop properly work or not?
By remote debugging
In this technique program running on a system is debug by other than debugger.It is debug by taking a remote network once the system is in control by him he can control from remote area from system where it placed.
In this type of debugging automatic test cases are applied for simplification of program.
Saff squeez debugging
It is a technique of isolating failure within the test using progressive inlining of parts of the failing test.
Post martem debugging
It is the technique applied after the system is being crashed.Several test cases are applied for debugging process.