Browse > Article
http://dx.doi.org/10.3745/KIPSTD.2010.17D.4.297

Automated Test Data Generation for Testing Programs with Multi-level Stack-directed Pointers  

Chung, In-Sang (한성대학교 컴퓨터공학과)
Abstract
Recently, a new testing technique called concolic testing receives lots of attention. Concolic testing generates test data by combining concrete program execution and symbolic execution to achieve high test coverage. CREST is a representative open-source test tool implementing concolic testing. Currently, however, CREST only deals with integer type as input. This paper presents a new rule for automated test data generation in presence of inputs of pointer type. The rules effectively handles multi-level stack-directed pointers that are mainly used in C programs. In addition, we describe a tool named vCREST implementing the proposed rules together with the results of applying the tool to some C programs.
Keywords
Concolic Testing; Automated Test Data Generation; Pointer; CREST;
Citations & Related Records
연도 인용수 순위
  • Reference
1 A. J. Offutt, Z. Jin, and J. Pan:, “The Dynamic Domain Reduction Procedure for Test Data Generation.” Softw., Pract. Exper. Vol.29, No.2, pp.167-193, 1999.   DOI   ScienceOn
2 C. Meudec, “ATGen:Automatic Test Data generation using Constraint Logic Programming and Symbolic Execution,” In Proc. IEEE/ACM Int. Workshop on Automated Program Analysis Testing and Verfication. pp.22-31, 2000.
3 F. Roger and B. Korel, “The Chaining Approach for Software Test Data Generation,” ACM Trans. on Soft. Eng. Methodology, Vol.5. No.1. pp.63-86, 1996.   DOI
4 C. C. Michael and G. McGraw, “Automated Software Test Data Generation for Complex Programs,” In proceedings of 13th International conference on Automated Software Engineering, pp.136-146, 1998.
5 M. J. Gallagher and V. L. Narasimhan, V. L. “ADTEST: A Test Data Generation Suite for Ada Software Systems,” IEEE Trans. on Software Eng, Vol.23. No.8. pp.473-484, 1997.   DOI   ScienceOn
6 R. P. Pargas, M. J. Harrold, and R. R. Peck. “Test Data Generation using Genetic Algorithms". Software Testing, Verification and Reliability 9, 263-282, 1999.   DOI   ScienceOn
7 G. C. Necula, S. McPeak, S. P. Rahul, and W. Weimer, “CIL: Intermediate Language and Tools for Analysis and transformation of C Programs.” In Proc. of Conference on compiler Construction, pp.213-228, 2002.
8 P. Ammann and J. Offutt, Introduction to Software Testing, Cambridge University Press, Cambridge, UK, ISBN 0-52188-038-1, 2008.
9 K. Sen, D. Marinov, and G. Agha, “CUTE: A Concolic Unit Testing Engine for C,” In Proc. of ESEC-FSE, pp.263-272, 2005.   DOI
10 P. Godefroid, N. Klarlund, and K. Sen. “DART: Directed automated random testing,” In Proc. of the ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation (PLDI), 2005.
11 J. Clarke, J. Dolado,, M. Harman,, R. Hierons, B. Jones, M. Lumkin, B. Mitchell, S. Mancoridis, K. Rees, M. Roper, and M. Shepperd, “Reformulating Software Engineering as a Search Problem,” IEE Proceedings-Software, Vol.5, No.1, pp.161-175, 2003.   DOI   ScienceOn
12 J. Edvardsson,, “A Survey on Automatic Test Data Generation,” In Proc. the Second Conf. on Computer Science and Engineering, pp.21-28, 1999.
13 J. Burnim, K. Sen, “Heuristics for Dynamic Test Generation,” In the 23rd IEEE/ACM International Conference on Automated Software Engineering (ASE), 2008.
14 I. S. Chung and J. M. Bieman, “Generating Input Data Structures for Automated Program Testing,” Software Testing, Verification and Reliability, Vol.19, No.1, pp.3-36, 2009.   DOI   ScienceOn
15 B. Korel, “Automated Software Test Data Generation,” IEEE Trans. on Software Eng, Vol.16. No.8. pp.870-879, 1990.   DOI   ScienceOn
16 S.Visvanathan and N. Gupta., “Generating Test Data for Functions with Pointer Inputs”, n Proc. the 17th IEEE International Conf. Automated Soft. Eng., pp.149-160, 2002.
17 A. Gotlieb, T. Denmat, and B. Botella, “Goal-oriented Test Data Generation for Pointer Programs,” Information and Software Technology, Vol.49, Issues 9-10, pp.1030-1044, 2007.   DOI   ScienceOn
18 C. Lapkowski, and L. J. Hendren, “Extended SSA Numbering: Introducing SSA properties to Languages with Multi-level Pointers,” ACAPS Tecnical Memo 102. School of Computer Science. McGill Univ. Canada. 1996.