[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article

Consistency techniques for interprocedural test data generation

Published: 01 September 2003 Publication History

Abstract

This paper presents a novel approach for automated test data generation of imperative programs containing integer, boolean and/or float variables. It extends our previous work to programs with procedure calls and arrays. A test program (with procedure calls) is represented by an Interprocedural Control Flow Graph (ICFG). The classical testing criteria (statement, branch, and path coverage), widely used in unit testing, are extended to the ICFG. For path coverage, the specified path is transformed into a path constraint. Our previous consistency techniques, the core idea behind the solving of path constraints, have been extended to handle procedural calls and operations with arrays. For statement (and branch) coverage, paths reaching the specified node or branch are dynamically constructed. The search for suitable paths is guided by the interprocedural control dependences of the program. The search is also pruned by a new specialized consistency filter. Finally, test data are generated by the application of the proposed path coverage algorithm. A prototype has been implemented. Experiments show the feasibility of the approach.

References

[1]
L. Clarke. A system to generate test data and symbolically execute programs. IEEE Transactions on Software Engineering, 2(3):215--222, 1976.]]
[2]
J. Duran and S. Ntafos. An Evaluation of Random Testing. IEEE Transactions on Software Engineering, 10(4):438--444, July 1984.]]
[3]
R. Ferguson and B. Korel. The chaning approach for software test data generation. ACM Transactions on Software Engineering Methodology, 5(1):63--86, 1996.]]
[4]
J. Ferrante, K. J. Ottenstein, and J. D. Warren. The program dependence graph and its uses in optimization. ACMTransactions on Programming Languages and Systems, 9(3):319--349, July 1987.]]
[5]
A. Gotlieb, B. Botella, and M. Rueher. A CLP framework for computing structural test data. In Computational Logic, pages 399--413, 2000.]]
[6]
N. Gupta, A. P. Mathur, and M. L. Soffa. Automated test data generation using an iterative relaxation method. In ACM SIGSOFT Sixth International Symposium on Foundations of Software Engineering(FSE-6), Nov. 1998.]]
[7]
N. Gupta, A. P. Mathur, and M. L. Soffa. Generating test data for branch coverage. In 15th IEEE International Conference on Automated Software Engineering(ASE00), September 2000.]]
[8]
P. V. Hentenryck, L. Michel, and Y. Deville. Numerica. A modeling language for global optimization. The MIT Press, Cambridge, Massachusetts, London, 1997.]]
[9]
T. Hickey. An interval arithmetic library, 2000. http://interval.sourceforge.net/interval/index.html.]]
[10]
J. King. Symbolic Execution and Program Testing. Communications of the ACM, 19(7):385--394, July 1976.]]
[11]
B. Korel. Automated test data generation for programs with procedures. In Proceedings of the 1996 International Symposium on Software Testing and Analysis (ISSTA), pages 209--215, 1996.]]
[12]
D. Melski and T. W. Reps. Interprocedural path profiling. In Computational Complexity, 1999.]]
[13]
C. Michel, M. Rueher, and Y. Lebbah. Solving constraint over floating-point numbers. In Seventh International Conference on Principles and Practice of Constraint. Springer Verlag, LNCS, 2001.]]
[14]
R. Moore. Interval Analysis. Prentice-Hall, Englewood Cliffs, NJ, 1966.]]
[15]
R. P. Pargas, M. J. Harrold, and R. Peck. Test-data generation using genetic algorithms. Software Testing, Verification and Reliability, 9(4):263--282, 1999.]]
[16]
W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery. Numerical Recipes in C. The Art of Scientific Computing. Second Edition. Cambridge University Press, 1992.]]
[17]
D. J. Richardson and M. C. Thompson. An analysis of test data selection criteria using the RELAY model of fault detection. IEEE Transactions on Software Engineering, 19(6):533--553, June 1993.]]
[18]
G. Schumacher and A. Bantle. Automatic test case generation using interval arithmetic. In Proceedings of the SCAN2000/INTERVAL2000, Germany, 2000.]]
[19]
S. Sinha, M. J. Harrold, and G. Rothermel. Interprocedural control dependence. Software Engineering and Methodology, 10(2):209--254, 2001.]]
[20]
N. T. Sy and Y. Deville. Automatic test data generation for programs with integer and float variables. In 16th IEEE International Conference on Automated Software Engineering(ASE01), 2001.]]
[21]
E. Tsang. Foundations of Constraint Satisfaction. Academic Press, 1993.]]

Cited By

View all
  • (2020)Using Augmented Genetic Algorithm for Search-Based Software TestingData Science: From Research to Application10.1007/978-3-030-37309-2_20(248-257)Online publication date: 29-Jan-2020
  • (2017)Test Data Generation Using Optimization Algorithm: An Empirical EvaluationSoft Computing: Theories and Applications10.1007/978-981-10-5699-4_64(679-686)Online publication date: 25-Nov-2017
  • (2016)Automatic goal-oriented test data generation using a Genetic algorithm and simulated annealing2016 6th International Conference - Cloud System and Big Data Engineering (Confluence)10.1109/CONFLUENCE.2016.7508052(83-87)Online publication date: Jan-2016
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGSOFT Software Engineering Notes
ACM SIGSOFT Software Engineering Notes  Volume 28, Issue 5
September 2003
382 pages
ISSN:0163-5948
DOI:10.1145/949952
Issue’s Table of Contents
  • cover image ACM Conferences
    ESEC/FSE-11: Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
    September 2003
    394 pages
    ISBN:1581137435
    DOI:10.1145/940071
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 September 2003
Published in SIGSOFT Volume 28, Issue 5

Check for updates

Author Tags

  1. arrays
  2. consistency
  3. constraint satisfaction
  4. procedures
  5. software testing
  6. test data generation

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2020)Using Augmented Genetic Algorithm for Search-Based Software TestingData Science: From Research to Application10.1007/978-3-030-37309-2_20(248-257)Online publication date: 29-Jan-2020
  • (2017)Test Data Generation Using Optimization Algorithm: An Empirical EvaluationSoft Computing: Theories and Applications10.1007/978-981-10-5699-4_64(679-686)Online publication date: 25-Nov-2017
  • (2016)Automatic goal-oriented test data generation using a Genetic algorithm and simulated annealing2016 6th International Conference - Cloud System and Big Data Engineering (Confluence)10.1109/CONFLUENCE.2016.7508052(83-87)Online publication date: Jan-2016
  • (2016)A Technique for Generating Test Data Using Genetic Algorithm2016 International Conference on Advanced Computing and Applications (ACOMP)10.1109/ACOMP.2016.019(67-73)Online publication date: Nov-2016
  • (2012)An Evaluation Model in Software Testing Based on AHPProceedings of the 2012 IEEE/ACIS 11th International Conference on Computer and Information Science10.1109/ICIS.2012.31(601-604)Online publication date: 30-May-2012
  • (2009)Experimental study on GA-based path-oriented test data generation using branch distanceProceedings of the 3rd international conference on Intelligent information technology application10.5555/1794554.1794608(216-219)Online publication date: 21-Nov-2009
  • (2009)Experimental Study on GA-Based Path-Oriented Test Data Generation Using Branch Distance FunctionProceedings of the 2009 Third International Symposium on Intelligent Information Technology Application - Volume 0110.1109/IITA.2009.232(216-219)Online publication date: 21-Nov-2009
  • (2009)Comparison of Two Fitness Functions for GA-Based Path-Oriented Test Data GenerationProceedings of the 2009 Fifth International Conference on Natural Computation - Volume 0410.1109/ICNC.2009.235(177-181)Online publication date: 14-Aug-2009
  • (2008)Automatic Path-Oriented Test Data Generation Using a Multi-population Genetic AlgorithmProceedings of the 2008 Fourth International Conference on Natural Computation - Volume 0110.1109/ICNC.2008.388(566-570)Online publication date: 18-Oct-2008
  • (2006)A scheme on automated test data generation and its evaluationJournal of Central South University of Technology10.1007/s11771-006-0112-713:1(87-92)Online publication date: Feb-2006
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media