Evaluating CAVM: A New Search-Based Test Data Generation Tool for C

  • Junhwi Kim
  • Byeonghyeon You
  • Minhyuk Kwon
  • Phil McMinn
  • Shin Yoo
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10452)


We present CAVM (pronounced “ka-boom”), a new search-based test data generation tool for C. CAVM is developed to augment an existing commercial tool, CodeScroll, which uses static analysis and input partitioning to generate test data. Unlike the current state-of-the-art search-based test data generation tool for C, Austin, CAVM handles dynamic data structures using purely search-based techniques. We compare CAVM against CodeScroll and Austin using 49 C functions, ranging from small anti-pattern case studies to real world open source code and commercial code. The results show that CAVM can cover branches that neither CodeScroll nor Austin can, while also exclusively achieving the highest branch coverage for 20 of the studied functions.



This work was supported by the ICT R&D program of MSIP/IITP [Grant No. R7117-16-0005: A connected private cloud platform for mission critical software test and verification].


  1. 1.
    Harman, M., Kim, S.G., Lakhotia, K., McMinn, P., Yoo, S.: Optimizing for the number of tests generated in search based test data generation with an application to the oracle cost problem. In: Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST 2010), pp. 182–191, April 2010Google Scholar
  2. 2.
    Harman, M., Hu, L., Hierons, R., Wegener, J., Sthamer, H., Baresel, A., Roper, M.: Testability transformation. IEEE Trans. Softw. Eng. 30(1), 3–16 (2004)CrossRefGoogle Scholar
  3. 3.
    Horowitz, E., Sahni, S., Anderson-Freed, S.: Fundamentals of Data Structures in C. W. H. Freeman & Co., New York (1992)zbMATHGoogle Scholar
  4. 4.
    Kempka, J., McMinn, P., Sudholt, D.: Design and analysis of different alternating variable searches for search-based software testing. Theoret. Comput. Sci. 605, 1–20 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Kim, J., You, B., Kwon, M., McMinn, P., Yoo, S.: Evaluation of CAVM, Austin, and CodeScroll for test data generation for C. Technical report. CS-TR-2017-413, School of Computing, Korean Advanced Institute of Science and Technology (2017)Google Scholar
  6. 6.
    Lakhotia, K., Harman, M., Gross, H.: AUSTIN: a tool for search based software testing for the C language and its evaluation on deployed automotive systems. In: 2nd International Symposium on Search Based Software Engineering, pp. 101–110, September 2010Google Scholar
  7. 7.
    McMinn, P., Kapfhammer, G.M.: AVMf: an open-source framework and implementation of the alternating variable method. In: Sarro, F., Deb, K. (eds.) SSBSE 2016. LNCS, vol. 9962, pp. 259–266. Springer, Cham (2016). doi: 10.1007/978-3-319-47106-8_21 Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Junhwi Kim
    • 1
  • Byeonghyeon You
    • 1
  • Minhyuk Kwon
    • 2
  • Phil McMinn
    • 3
  • Shin Yoo
    • 1
  1. 1.Korea Advanced Institute of Science and TechnologyDaejeonRepublic of Korea
  2. 2.Suresoft Technologies Inc.SeoulRepublic of Korea
  3. 3.University of SheffieldSheffieldUK

Personalised recommendations