The program dependence graph and its use in optimization
ACM Transactions on Programming Languages and Systems (TOPLAS)
Numerical recipes in C (2nd ed.): the art of scientific computing
Numerical recipes in C (2nd ed.): the art of scientific computing
An Analysis of Test Data Selection Criteria Using the RELAY Model of Fault Detection
IEEE Transactions on Software Engineering
The chaining approach for software test data generation
ACM Transactions on Software Engineering and Methodology (TOSEM)
Automated test data generation for programs with procedures
ISSTA '96 Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
Automated test data generation using an iterative relaxation method
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Symbolic execution and program testing
Communications of the ACM
Interprocedural control dependence
ACM Transactions on Software Engineering and Methodology (TOSEM)
Solving Constraints over Floating-Point Numbers
CP '01 Proceedings of the 7th International Conference on Principles and Practice of Constraint Programming
Interprocedural Path Profiling
CC '99 Proceedings of the 8th International Conference on Compiler Construction, Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS'99
Generating Test Data for Branch Coverage
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
Automatic Test Data Generation for Programs with Integer and Float Variables
Proceedings of the 16th IEEE international conference on Automated software engineering
Numerica: a modeling language for global optimization
IJCAI'97 Proceedings of the Fifteenth international joint conference on Artifical intelligence - Volume 2
On-the-Fly Generation of K-Path Tests for C Functions
Proceedings of the 19th IEEE international conference on Automated software engineering
Integrating automated test generation into the WYSIWYT spreadsheet testing methodology
ACM Transactions on Software Engineering and Methodology (TOSEM)
Goal-oriented test data generation for pointer programs
Information and Software Technology
The dependence condition graph: Precise conditions for dependence between program points
Computer Languages, Systems and Structures
Experimental study on GA-based path-oriented test data generation using branch distance
IITA'09 Proceedings of the 3rd international conference on Intelligent information technology application
PathCrawler: automatic generation of path tests by combining static and dynamic analysis
EDCC'05 Proceedings of the 5th European conference on Dependable Computing
Exploration of the capabilities of constraint programming for software verification
TACAS'06 Proceedings of the 12th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Hi-index | 0.00 |
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.