The class testing based on a dependence graph

종속성 그래프 기반 클래스 테스팅

  • 임동주 (조선대학교 전산통계학과) ;
  • 배상현 (조선대학교 전산통계학과)
  • Published : 2000.11.01

Abstract

The representation of a procedural program cannot be applied directly to object oriented program representation consisting of class, object, inheritance, and dynamic binding. Furthermore, preexisting program dependence represented the dependence among statements, but not among variables. That is, it could not solve the problem of which variables make an effect on given variables. Consequently, this study presents the method dependence model representing implementation level information including the dependence among variables in an object oriented program. I also propose implementation-based class testing technique based on the test adequacy criterion of an object-oriented program. Considering inter-data member dependences and a set of axioms for test data adequacy, it generates sequences of methods as test cases which satisfy a flow graph-based testing criterion. For a derived class testing, it considers inheritance relationship and the resuability of the testing information for its parent classes which verified the reduction of test cost through the experiment.

절차적 프로그램의 표현방법은 클래스, 객체, 계승, 동적 바인딩 등으로 이루어진 객체지향 프로그램 표현에 그대로 적용될 수 없다. 더군다나 기존의 프로그램 종속성은 변수간이 아니라 문장간의 종속성을 나타내고 있다. 즉, 주어진 변수에 어떠한 변수들이 영향을 미치고 있는가 하는 문제를 해결할 수 없다. 따라서 본 연구는 객체지향 프로그램에서 변수간의 종속성을 포함한 구현 수준의 정보를 나타내는 메소드 종속성 모델을 제시하고자 한다. 또한 객체지향 프로그램의 테스트 적합성 기준에 근거한 구현기반 클래스 테스팅 방법을 제안한다. 데이터 멤버간 종속성과 테스트 데이터 적합성에 대한 공리들을 고려하여 흐름 그래프 기반 테스팅 기준을 만족시키는 테스트 케이스인 메소드의 시퀀스를 생성시킨다. 파생 클래스 테스팅을 위해서 유산관계와 실험을 통해 테스트 비용 절감을 검증한 부모 클래스에 대한 테스팅 정보의 재사용성을 고려한다.

Keywords