$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

커스텀 파서와 SMT 솔버를 활용한 모델 기반 테스트 데이터 생성 기법
Model-Based Automatic Test Data Generation Method Using Custom Parser and SMT Solver 원문보기

정보처리학회논문지. KIPS transactions on software and data engineering. 소프트웨어 및 데이터 공학, v.6 no.8, 2017년, pp.385 - 390  

신기욱 (한양대학교 전자시스템공학과) ,  임동진 (한양대학교 전자공학부)

초록
AI-Helper 아이콘AI-Helper

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

Abstract AI-Helper 아이콘AI-Helper

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...

주제어

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 본 논문에서는 이와 같이 검증 도구 또한 표준 준수가 요구되는 경우에도 기존 검증 환경의 교체 없이도 사용될 수 있도록 커스텀 파서와 SMT 솔버가 결합된 새로운 모델 기반 자동 테스트 생성 방식을 제안한다
  • 본 논문에서는 커스텀 파서와 SMT (Satisfiability Modulo Theories) 솔버가 결합된 콘콜릭 수행 기반의 테스트 케이스 생성 구조를 통해, UML (Unified Modeling Language) 모델에서 생성한 클래스 다이어그램 및 상태 선도를 기반으로 자동 테스트 케이스 생성 기법을 제안한다. 이를 위해, 먼저 XMI로 변환된 모델 정보에서 테스트 케이스 생성에 필요한 각종 정보를 XPath (XML path language)를 이용해 불러온다.
  • 이러한 문제를 해결하기 위해 본 논문에서는, 산업 분야에서도 활용할 수 있도록 추상 테스트 케이스 대신 커스텀 파서와 SMT 솔버를 활용해 테스트 환경에 맞춰 바로 테스트 케이스를 생성하는 구조를 제안하였다. 또한, 모델 기반 개발 기법 적용 시 플랫폼 종속적인 모델 및 플랫폼 독립적인 모델 두 가지가 동시에 혼재되어 있는 환경에서도 테스트 케이스를 생성할 수 있도록 SMT 솔버 활용 전에 커스텀 파서 생성기를 통해 다양한 모델 구현 언어에도 대응할 수 있는 방식을 고안하였다.

가설 설정

  • 상기 언급한 테스트 데이터 생성 기법의 이해를 위한 예제로서, 파워윈도우 스위치 모듈에서 키 박스에 키를 넣었는지 여부에 따라 램프가 동작하는 기능을 검증하기 위한 테스트 데이터를 생성한다고 가정하자. 이러한 기능 구현을 위해 두 개의 클래스 MechanicalKeyInput, PocketLampOutput가 있고, 하기의 Fig.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
SAT 솔버의 단점은? 주로 코드 기반에서 테스트 케이스 생성을 위해 SAT 솔버 또는 SMT 솔버가 대표적으로 활용된다. SAT 솔버는 표현형이 간단하여 상대적으로 SMT 솔버에 비해 처리 속도가 빠르지만 CNF (conjunctive normal form) 와 같은 특정 포맷으로 변환이 필요하다는 단점이 있다. 반면, SMT 솔버는 속도가 느리지만 비교문과 같은 조건문 내의 다양한 구문을 처리할 수 있다는 점에서 사용이 편리하다.
주로 코드 기반에서 테스트 케이스 생성을 위해 무엇이 활용되는가? 주로 코드 기반에서 테스트 케이스 생성을 위해 SAT 솔버 또는 SMT 솔버가 대표적으로 활용된다. SAT 솔버는 표현형이 간단하여 상대적으로 SMT 솔버에 비해 처리 속도가 빠르지만 CNF (conjunctive normal form) 와 같은 특정 포맷으로 변환이 필요하다는 단점이 있다.
플랫폼 독립적인 모델을 구현하기 위해 ALF 와 fUML을 사용한 경우 한계점은? 플랫폼 독립적인 모델을 구현하기 위해 ALF 와 fUML을 사용한 경우, 활동 다이어그램을 수행 가능하게 만들어줄 수 있는 오픈 소스 도구인 fUML Reference Implementation를 활용할 수 있다[13]. 그러나, 플랫폼 독립적인 모델뿐 만 아니라 플랫폼 종속적인 모델을 동시에 구현하였거나 fUML 기반으로 생성하지 않은 경우는 해당 모델을 실시간으로 동작시키기 어렵다.
질의응답 정보가 도움이 되었나요?

참고문헌 (14)

  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. 

  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. 

  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. 

  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. 

  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. 

저자의 다른 논문 :

관련 콘텐츠

오픈액세스(OA) 유형

BRONZE

출판사/학술단체 등이 한시적으로 특별한 프로모션 또는 일정기간 경과 후 접근을 허용하여, 출판사/학술단체 등의 사이트에서 이용 가능한 논문

이 논문과 함께 이용한 콘텐츠

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로