Send Close Add comments: (status displays here)
Got it!  This site uses cookies. You consent to this by clicking on "Got it!" or by continuing to use this website.nbsp; Note: This appears on each machine/browser from which this site is accessed.
Program testing


1. Program testing

2. Testing

3. Testing
Testing is the process of finding differences between the expected behavior of the desired system and the observed behavior of the existing system.

Testing is insuring that what you expect is what you get.

You would like to find and fix these differences before your customers find them.

4. Black-box testing

5. Black-box testing
Black-box testing is testing to verify that the software does what it was designed to do.

Black box testing is also called:

6. Functional testing
Functional testing treats the module as a function that provides a value given a set of inputs.

However, most modules cannot be easily modeled by just a simple function, especially in the presence of side-effects, so the method can get quite complicated in practice.

7. Black box testing
The main idea in black box testing is that you cannot directly see the code inside the module. You can only see and use the module interface.

The code is a function that when provided with inputs, computes an output.

8. Glass-box testing

9. White-box testing
White-box testing is testing the internal consistency of the software.

White-box testing is also called: The main idea in white-box testing is that you can see inside the code, ignoring the specifications, in creating the test cases.

Knowledge of internal workings of the code are used to derive test cases.

10. Manual testing

11. Manual testing
Manual testing involves manually testing the system.

This is done using input from a keyboard and mouse.

Manual testing can be tedious, time-intensive, and error-prone.

12. Automated testing

13. Automated testing
Test automation software helps create and use test cases for software (e.g., unit testing, integration testing, etc.).

14. Regression testing
In regression testing, a module has one or more input test data sets. For each input data set, the module produces simple output in text file form.

Then, if a change is made, each module can be automatically tested by rerunning it (automatically) on the test data sets and seeing if the text output is the same. Each output data set that is different from the previous version must be evaluated to determine if that is what is actually desired, or is there an inconsistency that has been introduced into the software. One way to do this is as follows.

15. File comparators
A file comparator program compares two files and indicates the differences between the two files.

Some form of file comparator program is needed to make regression testing possible.

16. Regression testing
In simple regression testing, every unit of code to be tested is given some input in text form and produces some output in text form. We come up with test cases that given the input will produce the output.

Now, we make a change to the software.

We can now run all of the input test cases to produce new output text, and then compare the new output text with the old output text. Using file comparison techniques, if there is a change, then something
might be wrong. What are the four possibilities. The advantage of regression testing is that you can automate lots of testing and quickly locate the problem areas.

17. End of page

18. Multiple choice questions for this page