Abstract

Test data generation in program testing is the process of identifying a set of test data that satisfies given testing criteria. One of the major problems in dynamic testing of distributed software is reproducible program execution. Repeated executions of a distributed program with the same test data may result in execution of different program paths. Unlike for sequential programs, a test case for a distributed program must contain more than input data; it must also provide appropriate choices for nondeterministic selections. The paper presents a novel approach to automated test data generation that is based on actual execution of the program under test, a run-time scheduler, function-minimization methods, and dynamic dataflow analysis. Test data are developed for the program using actual values of the input variables. When the program is executed, the program execution flow is monitored. If during program execution an undesirable execution flow is observed (e.g., the ‘actual’ path does not correspond to the selected path), then function-minimization search algorithms are used to locate automatically the values of input variables for which the selected path is traversed. In addition, dynamic data-flow analysis is used to determine those input variables responsible for the undesirable program behaviour; this can lead to significant speed-up of the test data generation process.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.