DOI QR코드

DOI QR Code

Test Input Sequence Generation Strategy for Timing Diagram using Linear Programming

선형 계획법을 이용한 Timing Diagram의 테스트 입력 시퀀스 자동 생성 전략

  • 이홍석 (아주대학교 전자공학과) ;
  • 정기현 (아주대학교 전자공학부) ;
  • 최경희 (아주대학교 정보통신전문대학원)
  • Received : 2010.04.28
  • Accepted : 2010.07.06
  • Published : 2010.10.31

Abstract

Timing diagram is popularly utilized for the reason of its advantages; it is convenient for timing diagram to describe behavior of system and it is simple for described behaviors to recognize it. Various techniques are needed to test systems described in timing diagram. One of them is a technique to derive the system into a certain condition under which a test case is effective. This paper proposes a technique to automatically generate the test input sequence to reach the condition for systems described in timing diagram. It requires a proper input set which satisfy transition condition restricted by input waveform and timing constraints to generate a test input sequence automatically. To solve the problem, this paper chooses an approach utilizing the linear programming, and solving procedure is as follows: 1) Get a Timing diagram model as an input, and transforms the timing diagram model into a linear programming problem. 2) Solve the linear programming problem using a linear programming tool. 3) Generate test input sequences of a timing diagram model from the solution of linear programming problem. This paper addresses the formal method to drive the linear programming model from a given timing diagram, shows the feasibility of our approach by prove it, and demonstrates the usability of our paper by showing that our implemented tool solves an example of a timing diagram model.

Timing diagram은 시간에 따른 시스템의 행동을 표현하기 용이하고 표현된 행동을 쉽게 인식할 수 있는다는 장점 때문에 널리 사용되고 있다. Timing diagram으로 기술된 시스템을 테스트 하기 위해서는 여러 기술이 필요하다. 그 중의 하나는 테스트 케이스 목표들이 존재할 때, 시스템 모델이 원하는 상태에 도달하도록 하기 위해 입력 값들의 시퀀스를 생성하는 기술이다. 본 논문은 Timing diagram모델에 대한 테스트 케이스 목표로부터 테스트 입력 시퀀스를 자동으로 생성하는 방법을 제안한다. Timing diagram에서 테스트 입력 시퀀스를 자동으로 생성하기 위해서는 입력 waveform과 시간 제약으로 이루어진 시점의 전이 조건을 만족시키는 적절한 입력 집합을 필요로 한다. 이와 같은 문제를 해결하기 위해, 본 논문에서는 선형 계획법을 이용한 접근 방식을 택하였는데, 해결과정은 다음과 같다. 1) Timing diagram 모델을 입력으로 받아 이를 선형 계획 문제로 변형한다. 2)변형된 선형 계획 문제를 선형 문제 해결 도구를 사용하여 해결한다. 3) 선형 계획 문제의 해답으로부터 Timing diagram모델의 테스트 입력 시퀀스를 생성한다. 본 논문에서는 임의의 Timing diagram 모델에 대해 이를 선형 계획법으로 모델링 하는 방법을 형식적으로 기술하였고, 증명을 통해 본 논문의 접근 방법의 타당성을 보였으며, 또한 도구를 구현하여 Timing diagram 예제 모델로부터 테스트 입력 시퀀스를 생성함으로써 본 논문의 유용성을 입증하였다.

Keywords

References

  1. Korel, B.; Qi Zhang; Li Tao;, “Assertion-Based Validation of Modified Programs,” Software Testing Verification and Validation, 2009. ICST '09. International Conference on, Vol., No., pp.426-435, 1-4 April 2009. https://doi.org/10.1109/ICST.2009.50
  2. Ali M. Alakeel, “An Algorithm for Efficient Assertions-Based Test Data Generation”, Journal of Software, Vol.5, No.6, pp. 644-653, 2010. https://doi.org/10.4304/jsw.5.6.644-653
  3. S. Rayadurgam; M.P.E. Heimdahl, “Coverage based test-case generation using model checkers,” Engineering of Computer Based Systems, 2001. ECBS 2001. Proceedings. Eighth Annual IEEE International Conference and Workshop on the, Vol., No., pp.83-91, 2001. https://doi.org/10.1109/ECBS.2001.922409
  4. Jee-Eun Yoo, “Using Model Checking to Generate Data-Flow Oriented Test Case from Statecharts,” Master thesis, KAIST, 2002.
  5. Reactis: http://www.reactive-systems.com/
  6. J. Tong, M. Boule, Z. Zilic, “Airwolf-TG: A Test Generator for Assertion-Based Dynamic Verification,” Proceedings of IEEE High-level Design Validation and Test Workshop, HLDVT'09, pp.106-113, Nov. 2009. https://doi.org/10.1109/HLDVT.2009.5340166
  7. Mokhtar Bazaraa et al, “Linear programming and network flows,” Wiley Press (3rd edition), 2004.
  8. 박구현, 송한식, 원중연, “경영과학-엑셀활용,” 교보문고, 2009.
  9. Resolution Lionel Van, Lionel Van Aertryck, Thomas Jensen, “UML-CASTING: Test synthesis from UML models using constraint,” In Proc.AFADL’2003 (Approches Formelles dans l’Assistance au Development de Logiciel), 2003. Available on the internet: http://www.irisa.fr/triskell/AFADL2003/actesAFADL2003/test04.pdf
  10. Gregoire Hamon, Leonardo de Moura and John Rushby, “Generating Efficient Test Sets with a Model Checker,” Software Engineering and Formal Methods, International Conference on Second International Conference on Software Engineering and Formal Methods (SEFM'04), pp.261-270, 2004. https://doi.org/10.1109/SEFM.2004.1347530
  11. Ashalatha Nayak, Debasis Samanta: “Automatic Test Data Synthesis using UML Sequence Diagrams,” in Journal of Object Technology, vol. 09, no. 2, pp. 75-104, 2010. Available on the internet: http://www.jot.fm/issues/issue201003/article2/ https://doi.org/10.5381/jot.2010.9.2.a2.
  12. Yongyan Zheng, Jiong Zhou, Paul Krause, “An Automatic Test Case Generation Framework for Web Services”, in Journal of Software, Vol.2, No.3, pp.64-77, 2007. https://doi.org/10.4304/jsw.2.3.64-77
  13. Peter Frohlich, Johannes Link, “Automated Test Case Generation from Dynamic Models”, In Proceedings of the 14th European Conference on Object-Oriented Programming, Lecture Notes In Computer Science, Vol.1850, pp.472-492, 2000. https://doi.org/10.1007/3-540-45102-1_23
  14. Nam Hee Lee, Sung Deok Cha, “Generating test sequences using symbolic execution for event-driven real-time systems,” Microprocessors and Microsystems, Vol27, Issue 10, pp.523-531, 2003. https://doi.org/10.1016/S0141-9331(03)00102-9
  15. Gregoire Hamon, Leonardo de Moura and John Rushby, “Automated Test Generation with SAL,” CSL Technical Note, 2005. Available on the internet: http://fm.csl.sri.com/~rushby/abstracts/sal-atg
  16. 오정섭, 최경희, 정기현, “1대1 요구사항 모델링을 통한 테스트 케이스 자동 생성,” 정보처리학회 논문지 D, Vol.17D, No.1, pp.41-52, 2010.
  17. 정인상, “SAT를 이용한 MC/DC 블랙박스 테스트 케이스 자동 생성,” 정보처리학회 논문지 D, Vol.16D, No.6, pp.911-920, 2009. https://doi.org/10.3745/KIPSTD.2009.16D.6.911