2010-07-05 5 views
2

내 장고 프로젝트 중 하나에서 TransactionalTestCase 클래스 (TestCase보다 훨씬 오래 걸립니다)를 기반으로하는 단위 테스트 스위트가 있습니다. 은 모든 테스트를 실행하는 데 0.5 시간 이상이 걸리기 때문에 코드를 변경할 때마다 테스트를 실행할 수 없습니다.. 우리는 몇 시간 전에 쉽게 보았습니다 연속적인 통합 도구은 테스트 서버에서 테스트를 실행하고 팀 구성원에게 오류가있는 전자 메일을 보낼 수있게합니다 (물론 코드 저장소가 있고 자동 필요가 없습니다.) momment에서 배포). 이 작업을 수행하는 방법이나 해결책이 있습니까?Django 프로젝트를위한 (단순한) 지속적인 통합 솔루션은 무엇입니까?

우리는 테스트를 실행하고 전자 메일 보고서 (코드 저장소와 통합되어 있음)를 보내는 것 외에는 아무것도하지 않는 '매우 단순한 CI 서버'를 작성했습니다. 그러나 우리가 이상적이지 않은 간단한 도구로 인해 문제가 발생했기 때문에 작업 환경에서 비슷한 시나리오를 성공적으로 완료했는지 궁금합니다.

나는 설치가 쉽고 사용하기 쉬운 무언가를 찾고 있습니다.

답변

6

면책 조항 : 저는 장고에 대해 알고 있습니다. 그러나 나는 많은 언어와 플랫폼을위한 나의 지속적인 통합 도구로서 Hudson을 사용한다는 것을 알고있다. Windows와 Linux 모두에서 쉽게 설치 및 구성 할 수 있다는 것을 알았습니다 (& 설정 잊음). 사용 가능한 플러그인 수에 깊은 인상을 받았습니다.

기본적으로 원하는 작업을 sctript 파일로 자동화 할 수 있다면 허드슨을 사용할 수 있습니다. 정말 가치가있어.

뭔가를 잘못 처리하는 경우에만 전자 메일을받을 수 있도록 설정하는 데 몇 분이 걸렸습니다. 다른 작업 (플러그인이있을 수 있음)을 원할 수도 있습니다. 허드슨은 BigZilla, 모든 주요 버전 제어 도구 등의 다른 도구와도 잘 작동합니다.

+1

+1 허드슨 http://heisel.org/blog/2009/11/21/django-hudson/ –

+0

+1 답변을 찾았 으면 좋겠습니다. 잘 했어 @van gale – Mawg

+0

이것은 예상하지 못했지만 어쨌든 유망 해 보인다. – dzida

1

기본 테스트와 고급 테스트의 두 가지 종류가 있고 기본 테스트 만 실행하는 추가 django 명령을 추가하는 것이 빠른지 생각해 봤습니까? 이렇게하면 작은 변경에 대한 기본 테스트를 수행하고 변경 사항을 커밋/푸시 할 때만 전체 테스트를 실행할 수 있습니다.

+0

좋은 생각이지만 유감스럽게도 대부분의 테스트에서는 TransactionlTestCase를 기본 클래스 (매우 구체적인 프로젝트)로 사용하기 때문에 일부 환경 코드를 변경 한 후에 실행하십시오. – dzida

관련 문제