Wednesday, February 2, 2011

Test Case Design for Software Testing

The design of tests for software and other engineered products can even as challenging as the initial design of the product. However, software engineers often treat complete testing in retrospect, the development of test cases on the right who may "feel" but they have little certainty of being. Recalling the objectives of testing, we need to design tests that have the highest probability that most of the errors have a minimum of time and effort.

A large number of test casesDesign methods developed software. These methods provide the developer with a systematic approach to testing. More importantly, are methods a mechanism that tests can help to ensure the completeness and offer the highest probability of detecting errors in the software.

Each product of (and most other things) can be tested in one of two ways:

1. The knowledge of the specified function that a product was developed to run to, tests are performed thatdemonstrate each function is fully operational, while at the same time looking for errors in each function.

2. Knowledge of the internal workings of a product, it performed tests to make sure that that is, internal processes are in accordance with the specifications and all internal components have been sufficiently recognized "all mesh, gear" to be. The first test approach as a black-box testing and the second, white-box testing.

Computer software is regarded as Black-Box Try playing on tests, the interface software can be carried out at the. Although they are intended, error detect, box tests are used black to demonstrate that software functions are operational, the input is accepted correctly and output generated correctly and that the integrity of external information (eg, a database ) is maintained. A black-box test examines some fundamental aspect of a system with little regard for the internal logical structure of the> Software.

White-box testing of software is stated in detail on closer examination of procedural law. Logical paths, the software tested by grinding through the provision of test cases that exercise specific sets the conditions and / or. The "state of the program" can be studied at various locations to determine whether the expected or asserted status corresponds to the current status.

At first glance, it seems that very thorough white-box testing would lead to "100 percentcorrect programs. "All you have to do is to define all logical paths develop test cases to exercise them, and evaluate results, that is, test cases to exercise exhaustively to program logic. Unfortunately, exhaustive testing some logistical difficulties,. For even small programs, the number of possible logical paths can be very large. Consider the example of 100 lines in the C language program after program contains some basic data declaration for the two nested loops that run10-20 times indicated in each case depending on the conditions at the entrance. Within the inner loop, four if-then-else constructs are required. There are about 1014 possible paths that can be executed in this program!

To this number in perspective, we believe that a magic test processor ("magic" because no such processor exists) has been developed for extensive testing. The processor can develop and run a test case, and evaluate the results in a millisecond. Working Group 24 hoursDay, 365 days a year, would work the processor for 3170 years to test the program. This would certainly cause chaos in most development schedules. Extensive testing is impossible for large software systems.

White-box testing should not be dismissed as impractical. A limited number of important logical paths are selected and applied. Important data structures can be examined for validity. The attributes of both black and white boxes can be located to give aApproach that validates the software interface and selectively to ensure that the internal workings of the software are correct.

Recommend : !: Cheap Lcd Flat Panel HDTV !8!# New Ear Plugs !8!# Best Lizard Sculpture



No comments:

Post a Comment