Generating Test Cases for Object-Oriented Design Specification

OCL로 기술된 객체지향 설계 명세의 테스트 케이스 생성

  • Choe, Eun-Man (Dept.of Computer Engineering, Dongguk University)
  • 최은만 (동국대학교 컴퓨터공학과)
  • Published : 2001.10.01

Abstract

Statistics concerning software errors indicate that more errors are introduced in analysis and design phase than implementation phase. Therefore, it is needed to check whether the design modeling is appropriate for own function and structure. This paper discussed the effective test method for the object-oriented design model, i.e., UML. A new method was proposed for generating test data. This method consists of category partition theory by the representation each element in UML model with OCL (Object Constraint Language). Test data generated in this way can be used for testing the source code functionality as well as for checking the design model.

소프트웨어의 오류에 대한 통계를 보면 구현단계보다 분석과 설계 단계에 더 중요하고 많은 오류가 유입된다. 따라서 소프트웨어의 분석 및 설계 작업의 결과인 디자인 모델이 요구에 맞게 설계되었는지, 또는 구조적으로 적합한지 잘 점검할 필요가 있다. 이 논문에서는 객체지향 설계 방법으로 사용되고 있는 UML로 표현된 설계 모델을 효과적으로 테스트할 수 있는 방법에 대해 논의하였다. UML 모델을 이루는 각 요소들에 대한 제약조건을 OCL(Object Constraint Language)로 기술하고 카테고리 분할 방법을 이용하여 UML모델을 테스트하기 위한 데이터를 생성하는 방법을 제안하였다. 생성된 테스트 데이터를 이용하여 객체지향으로 설계된 모델뿐만 아니라 개발된 시스템의 기능 테스트를 수행할 수 있다.

Keywords

References

  1. David Chappell, 'The Next Wave, Component Software Enters The Mainstream,' http://www.rational.com/product/whitepaper, 1997
  2. K. Beck, Extreme Programming, Addison Wesley, 2000
  3. E. Choi, A. von Mayrhauser, 'Testing Object-Oriented Systems Using Extended Use-Cases,' Proceedings of PDPTA 2000, Las Vegas, CSREA Press, pp.831-838, 2000
  4. J. Offutt, A. Abdurazik, 'Generating tests from UML specifications,' UML '99 - The Unified Modeling Language Beyond the Standard, pp.416-430, 1999
  5. P. B. Carpenter, 'Validation of Requirements for Safety-Critical Software,' Proceedings of the ACM SigAda Annual International Conference, pp.23-29, 1999
  6. M. Scheetz, A. von Mayrhauser, R. France, 'Getting Test Cases from an OO Model with an AI Planning System,' Proceedings of 10th International Symposium on Software Reliability Engineering, pp.250-259, 1999 https://doi.org/10.1109/ISSRE.1999.809330
  7. T. J. Ostrrand, M. J. Balceru, 'The Category-Partition Method for Specifying and Generating Functional Tests,' Communications of the ACM. Vol.31, No.6,pp.676-686, 1988 https://doi.org/10.1145/62959.62964
  8. J. C. Offutt, A. Irvine, 'Testing Object-Oriented Software using the Category-Partition Method,' Proceeding of TOOLS USA'95 conference, 1995
  9. E. Weyuker, B. Jeng, 'Analyzing Partition Testing Strategies,' IEEE Transactions on Software Engineering, Vol.17, No.7, pp.703-711, 1991 https://doi.org/10.1109/32.83906
  10. D. C. Ince, 'The Automatic Generation of Test Data,' Computer Journal, Vol.30(1), pp.63-69, 1987 https://doi.org/10.1093/comjnl/30.1.63
  11. P. Maurer, 'Generating Test Data with Enhanced Context Free Grammars,' IEEE Software, July, pp.50-55, 1990 https://doi.org/10.1109/52.56422
  12. D. J. Kasik, H. G. George, 'Toward Automatic Generation of User Test Scripts,' Proceedings of the Conference on Human Factors in Computer Systems : Common Ground, ACM Press, pp.244-251. 1996