속도와 종류에 따라 테스트 계획 세우기

테스트를 실행하고 실행시간을 측정해 보면 테스트들을 단위테스트와 통합 테스트로 분류할 수 있다. 폴더나 네임스페이스만으로 구분해도 충분히다.

테스트가 실패의 몇 가지 이유

  1. 테스트 대상 코드에 버그가 존재한다.
  2. 테스트가 작성된 방식에 문제가 있다
  3. 테스트가 이제는 적절하지 않다.
  4. 실행하는 데 설정이 필요하다

통합 테스트가 테스트 프로젝트 안에서 단위 테스트와 섞여 있는 것은 좋지 않다. 통합 테스트와 단위 테스트를 별개 장소로 두어야 한다. 그렇게 함으로써  최신 버전의 소스코드를 받아 특정한 네임스페이스나 폴더에 들어 있는 모든 테스트를 실행하면 모두 녹색 불이 켜지는 곳이어야 한다.

테스트는 소스 컨트롤의 일부여야 한다. 테스트 코드는 실제 제품코드와 마찬가지로 소스 컨트롤 저장소에 들어 있어야 한다. 제품의 각 버전을 담는 가지(branch)안에 트세트도 포함 되어야 하고, 개발자가 최신 버전을 내려받을 때 자동으로 함께 내려받을 수 있어야 한다. 테스트는 대산 코드 및 API와 긴밀하게 엮어 있기 때문에 테스트 대상코드 버전에 붙어서 따라다녀야 한다. 제품의 버전 1.0.1를 가져오면 제품에 대한 테스트 버전 1.0.1도 딸려 와야 한다.

테스트 클래스를 만들 때 다음과 같은 일들을 쉽게 할 수 있도록 조직해야 한다.

  1. 프로젝트를 보고 관련된 모든 테스트 찾기
  2. 클래스를 보고 관련된 모든 테스트 찾기
  3. 메서드를 보고 관련된 모든 테스트 찾기

 

댓글 남기기