DOI QR코드

DOI QR Code

Model-Based Automatic Test Data Generation Method Using Custom Parser and SMT Solver

커스텀 파서와 SMT 솔버를 활용한 모델 기반 테스트 데이터 생성 기법

  • 신기욱 (한양대학교 전자시스템공학과) ;
  • 임동진 (한양대학교 전자공학부)
  • Received : 2016.12.09
  • Accepted : 2017.05.15
  • Published : 2017.08.31

Abstract

Because of the ever-increasing software complexity, model-based development techniques are becoming an essential technique in software development. However, even if model-based techniques are used, the test case generation for complex software is still a challenge to solve. In this paper, we propose a method to generate automatic test cases based on UML model using custom parser and SMT solver. By proposed technique, a test case can be generated even though the model is described in a platform independent language such as action language, or in a platform dependent language. In addition, a concolic execution technique is applied to efficiently generate test cases in the model. In this paper, we present a case study on the power window switch model of Hyundai Santa Fe through the proposed test case generation technique.

지속적으로 증가하는 소프트웨어 복잡성으로 인해, 모델 기반 개발 기법은 소프트웨어 개발에 있어 거의 필수적인 기법이 되고 있다. 그러나, 모델 기반 기법을 활용한다 하더라도 복잡한 소프트웨어를 위한 테스트 케이스 생성은 여전히 풀어야 할 숙제이다. 본 논문에서는, 커스텀 파서와 SMT 솔버를 이용해 UML 모델 기반에서 자동 테스트 데이터를 생성하는 기법을 제안한다. 제안된 기법을 이용하면, 모델이 액션 언어(action language)와 같은 플랫폼 독립적인 언어로 구현되어 있거나, 플랫폼 종속적인 언어로 기술되어 있더라도 테스트 입력을 생성할 수 있다. 또한, 모델에서 테스트 케이스를 효율적으로 생성하기 위해 콘콜릭 수행 기법을 적용하였다. 본 논문에서는, 제안된 테스트 데이터 생성 기법을 통해 현대 산타페의 파워윈도우 스위치 모델에 활용된 사례를 기술한다.

Keywords

References

  1. C. Cadar, P. Godefroid, S. Khurshid, C. S. Păsăreanu, K. Sen, N. Tillmann, and W. Visser, "Symbolic execution for software testing in practice: preliminary assessment," Proceedings of the 33rd International Conference on Software Engineering, ACM, pp.1066-1071, 2011.
  2. C. Mingsong, Q. Xiaokang, and L. Xuandong, "Automatic test case generation for UML activity diagrams," Proceedings of the 2006 International Workshop on Automation of Software Test, ACM, Shanghai, China, pp.2-8, 2006.
  3. M. Prasanna, K. R. Chandran, and K. Thiruvenkadam, "Automatic Test Case Generation for UML Collaboration Diagrams," IETE Journal of Research, Vol.57, No.1, pp.77, 2011. https://doi.org/10.4103/0377-2063.78373
  4. P. Samuel, R. Mall, and P. Kanth, "Automatic test case generation from UML communication diagrams," Information and Software Technology, Vol.49, No.2, pp.158-171, 2007. https://doi.org/10.1016/j.infsof.2006.04.001
  5. M. Sarma, D. Kundu, and R. Mall, "Automatic Test Case Generation from UML Sequence Diagram," Advanced Computing and Communications, 2007. ADCOM 2007. International Conference on, pp.60-67, 2007.
  6. P. Samuel, R. Mall, and A. K. Bothra, "Automatic test case generation using unified modeling language (UML) state diagrams," IET Software, Vol.2, No.2, pp.79-93, 2008. https://doi.org/10.1049/iet-sen:20060061
  7. P. Gulia and R. S. Chillar, "A new approach to generate and optimize test cases for UML state diagram using genetic algorithm: http://doi.acm.org/10.1145/180921.2180933." ACM SIGSOFT Software Engineering Notes, Vol.37, No.3, pp.1-5, 2012.
  8. Y. J. Kim, M. Z. Kim, Y. H. Kim, and U. J. Jung, "Comparison of Search Strategies of KLEE Concolic Testing Tool," Journal of KIISE: Computing Practices and Letters, Vol.18, No.4, pp.321-325, 2012.
  9. K. Yunho, K. Moonzoo, and J. Yoonkyu, "CREST-BV: An Improved Concolic Testing Technique Supporting Bitwise Operations for Embedded Software," Journal of KIISE: Software and Applications, Vol.40, No.2, pp.90-98, 2013.
  10. S. J. Park, "A Method for Managing Traceability of Business Application Services through Automatic Generation of Analysis Model," Ph.D. dissertation, Dept. of Computer Science, Sogang University, 2008.
  11. K. W. Shin, J. H. Lee, S. S. Kim, J. U. Park, and D. J. Lim, "Automatic Test Case Generation Based on the UML Model of the Automotive-Embedded Software using a Custom Parser and SMT Solver," JSAE 2016 Annual Congress (Spring), pp.1198-1202, 2016.
  12. C. Barrett, M. Deters, L. de Moura, A. Oliveras, and A. Stump, "6 Years of SMT-COMP," Journal of Automated Reasoning, Vol.50, Issue 3, pp.243-277, 2013. https://doi.org/10.1007/s10817-012-9246-5
  13. Zoltan Micskei, R.-A.K. Benedek Horvath, Oszkar Semerath, Andras Voros, Daniel Varro, "On Open Source Tools for Behavioral Modeling and Analysis with fUML and Alf," 1st Workshop on Open Source Software for Model Driven Engineering '2014, Valencia, Spain, pp.31-41, 2014.
  14. S. Ali, M. Zohaib Iqbal, A. Arcuri, and L. C. Briand, "Generating Test Data from OCL Constraints with Search Techniques," IEEE Transactions on Software Engineering, Vol.39, No.10, pp.1376-1402, 2013. https://doi.org/10.1109/TSE.2013.17