문제

제가 일하는 곳에서는 약 3,000개의 개별 테스트 사례로 구성된 테스트 그룹을 실행하고 있습니다.이전에는 이 전체 테스트 모음을 하나의 컴퓨터에서 실행했는데, 전체 테스트 실행을 완료하는 데 약 24~72시간이 걸렸습니다.이제 우리는 약 3개의 개별 컴퓨터 간에 테스트를 그룹화하고 배포하기 위한 자체 시스템을 만들었으며 테스트의 우선 순위를 지정하여 보다 즉각적인 결과를 위해 핵심 테스트가 먼저 실행되고 사용 가능한 컴퓨터가 있을 때 추가 테스트가 실행됩니다.

전체 실행에 대한 총 테스트 시간을 줄이기 위해 여러 컴퓨터에 테스트를 배포하는 좋은 방법을 찾은 사람이 있는지, 그리고 이를 달성하기 위해 어떤 도구가 사용되었는지 궁금합니다.몇 가지 조사를 해본 결과 TestNG가 다음과 같은 것 같습니다. 이 방향으로 움직이고 있다, 하지만 아직은 상당한 개발 단계에 있는 것 같습니다.

테스트를 다시 작성할 계획은 없지만 새 테스트를 추가하고 새 제품이나 추가 기능을 테스트할 때 매우 많은 수의 테스트를 작업하고 있다는 사실을 처리할 수 있기를 바랍니다.반면에 Junit을 배포하는 데 도움이 되는 도구를 찾을 수 있다면 3.x 아주 기본적인 방식으로도 테스트를 진행합니다. ~일 것이다 이를 수행하기 위해 자체 도구를 유지할 필요가 없으므로 도움이 됩니다.

도움이 되었습니까?

해결책

같이 노는 사람도 봤는데 분산된 JUnit.그것이 얼마나 효과적인지 특별히 보증할 수는 없지만, 제가 본 다른 팀들은 그것이 충분히 간단하다고 생각하는 것 같았습니다.도움이 되길 바랍니다.

다른 팁

우리 빌드 사람들은 Mozilla Tinderbox를 사용합니다.분산 테스트를 위한 몇 가지 후크가 있는 것 같습니다.자세한 내용을 알지 못해 죄송하지만 최소한 지침을 여러분에게 전달해 드리고자 생각했습니다.

또한 빌드가 중단될 때 즉시 알아낼 수 있고 어떤 체크인이 원인이었을지 알 수 있다는 점도 좋습니다.

http://www.mozilla.org/tinderbox.html

또한 있습니다 병렬 junit.현재 테스트를 실행하는 방법에 따라 편의성이 달라질 수 있습니다. 아이디어는 여러 코어가 있는 단일 시스템에서 멀티스레드하는 것입니다.간단히 사용해 보았지만 현재 테스트를 실행하는 방식과 달라졌습니다.

허드슨 강, 내가 사용하는 지속적인 통합 엔진인 에는 테스트 실행을 분산하는 몇 가지 방법도 있습니다(별도의 작업이 결과를 하나로 집계함).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top