우리는 세 세트의 테스트 스위트를 가지고 있습니다 :
- 실행하는 데 몇 시간 밖에 걸리지 않는 "작은"제품군
- 여러 시간이 걸리는 "중간"제품군으로, 매일 밤 (매일) 실행됩니다.
- 일주일 이상 걸리는 "대형"스위트
우리는 또한 더 짧은 테스트 스위트를 보유하고 있지만 여기서는 그에 초점을 맞추지 않습니다.
현재 방법론은 트렁크에 커밋하기 전에 작은 제품군을 실행하는 것입니다. 그런 다음 중형 스위트는 매일 밤 실행되며 아침에 실패로 판명되면 어제의 커밋 중 하나를 비난하고 격리를 롤백하고 테스트를 다시 시도합니다. 야간 스위트 대신 매주 비슷한 프로세스가 대형 스위트에 대해 수행됩니다.
불행히도, 중간 스위트는 자주 실패합니다. 그것은 트렁크가 종종 불안정하다는 것을 의미하며, 수정하고 테스트 할 때 매우 성가시다. 트렁크에서 체크 아웃 할 때 안정적인지 알 수 없기 때문에 테스트가 실패하고 테스트가 실패하면 내 잘못인지 확실하지 않기 때문에 성가신 일입니다.
내 질문은, 트렁크를 항상 최고의 모양으로 유지하는 방식으로 이러한 상황을 처리하는 알려진 방법이 있습니까? 예를 들어 "야간이 지나갈 때마다 정기적으로 트렁크를 업데이트하는 특별한 사전 커밋 지점으로 커밋"합니다.
그리고 SVN과 같은 중앙 집중식 소스 제어 시스템 또는 git과 같은 분산 시스템인지 여부는 중요합니까?
나는 물건을 바꿀 수있는 능력이 제한된 주니어 개발자 인 반면, 나는이 고통을 처리 할 수있는 방법이 있는지 이해하려고 노력하고 있습니다.