Whiteship's Note


스프링은 CI를 어떻게 하고 있을까?

Good Tools : 2008.09.08 19:49


스프링은 Bamboo를 사용하고 있습니다.
http://build.springframework.org:8085/start.action
여기서 확인할 수 있죠.

사용자 삽입 이미지

하나의 프로젝트에 여러 Plan을 두고 빌드하고 있는 모습입니다. 오른쪽에 잘 보면 시간이 나와있는데, 스프링 개발자들 무진장 열심히 개발하고 있습니다. 모든 빌드가 거의 한 시간을 넘은것들이 없네요. 완전 따끈따끈한 프로젝트입니다.

Plan을 나눠 둔걸 보면 빌드를 어떻게 구성해야 할지 대강 짐작이 옵니다. 특히 Spring OSGi를 보면, OSGi 플랫폼 삼형제에 각각의 Plan을 두고 빌드 하고 있습니다. 배포 환경이 여러 개 일 때 각각에 해당하는 빌드를 구성해서 CI 활용을 극대화 하고 있는 모습입니다.

캬~ 스프링 멋져.
top

  1. Favicon of https://namocom.tistory.com BlogIcon 나모찾기 2013.02.19 14:04 신고 PERM. MOD/DEL REPLY

    Bamboo가 어디껀가 했더니 Jira랑도 관련이 있는 Atlassian였군요.
    http://www.atlassian.com/software/bamboo/overview

Write a comment.


하악하악 테스트 커버리지



사용자 삽입 이미지

Bamboo가 만들어준 클로버 테스트 커버리지 리포트 입니다. 너무 단순해 보여서 탈이지만, 바쁘기 땜시 딱 저것만 봐도 충분합니다.

0%가 나온 날은 그날 빌드가 안 돌아가서 그렇습니다. 41%로 시작했다가 쭉쭉 떨어져서 17%를 바닥 치고 다시 50%까지 성장하고 있습니다. 투자 할만해 보이시나요? ㅋㅋ

테스트 커버리지를 올리기로 결심한 것은 박재성님의 CI 강좌 이후 뒷풀이 때 박재성님과 나눈 대화 때문이었습니다. "테스트 커버리지 70% 이상을 유지하시는데 힘드시지 않은가요?" 라는 질문을 드렸고 그 뒤에 박재성님께서 매우 좋은 답변을 해주셔서 저에게 자극이 됐던 것 같습니다.

현재 프로젝트를 진행하며 토비형님과 함께 OSAF도 만들어가고 있습니다. 실제 프로젝트를 진행하며 스프링 2.5, 하이버 3.2 기반의 OSAF 프레임워크를 만들고 있습니다. 그래서인지 정말로 필요한 코드들만 프레임워크에 들어가고 있으며 잘 만들면 ROO나 RoR의 스캐폴딩이 부럽지 않은 기능과 센스를 갖춘 프레임워크가 나올 것으로 기대하고 있으며 또 그렇게 만들려고 노력하고 있습니다. 그 정도 되려면 스프링 프레임워크 정도의 테스트 커버리지는 기본으로 갖춰줘야겠지요.

사용자 삽입 이미지

Anyway, 성장이 좀 더뎌지긴 했지만 꾸준히 올라갈 것으로 예상됩니다. 어떻게 아냐구요? 아직도 OSAF 코드 중에 테스트를 만들어야 할 대상들이 남아있기 때문이죠. 그리고 제가 만들기로 마음먹었기 때문에 커버리지는 분명히 좀 더 올라갈 것입니다.
top

  1. 선영욱 2008.05.06 08:53 PERM. MOD/DEL REPLY

    언제나 실천으로 모범을 보여 주시네요. 멋지십니다.
    즐거운 하루 되세요. ^^

    Favicon of http://whiteship.tistory.com BlogIcon 기선 2008.05.06 14:07 PERM MOD/DEL

    잘 못하고 있어서 부끄러운데요. ㅋㅋ;;
    열심히 해야죠. 좋은 한 주 되세요!

Write a comment.


Bamboo 멋쟁이 - CI 와 테스트

Good Tools : 2008.03.04 13:31


사용자 삽입 이미지

위의 메시지는 CI툴 Bamboo가 보내준 메시지 입니다. 멋지죠.
구글톡을 항상 켜두는 저로써는 이메일 보다 인스턴스 메시지가 훨씬 편한데, Bamboo는 그것도 지원해 줍니다.

프로젝트에 CI툴을 도입하시려는 분이 계시다면, 꼭 Bamboo를 사용해 보시라고 권해드리고 싶습니다. 물론 CI 툴만 도입한다고 해서 프로젝트에 뭔가 마술과도 같은 일이 생기지는 않을 것입니다.

CI는 테스트 클래스를 먹고 삽니다. 테스트 클래스가 없으면 CI도 굶어 죽습니다. 테스트를 제때 잘 제공해주면(커버리지 70~80% 정도로) Bamboo는 신이나서 유용한 정보들을 제공해 줄 것입니다.

사용자 삽입 이미지
자동으로 만들어 주는 리포트 메뉴입니다.
저것들 중에서 테스트가 없으면.. 어떤 리포트가 의미가 있을수 있을까요??

빌드 주기? 버튼을 몇번이나 눌렀으며 커밋을 몇 번이나 했는지 확인하는 건가요??
클로버 커버리지.. 항상 자료가 없겠죠.
빌드 성공률? 컴파일 성공률을 측정해 주겠군요;;
타임 투 픽스. 얼마나 컴파일 에러를 빨리 잡았는가...

이런 웃긴 데이터들을 보고 싶지 않으시다면 꼭 테스트를 작성해야 합니다.
그럼 Bamboo도 보답해 줄 것입니다. 꼭 Bamboo가 아니더라도 말이죠...

'Good Tools' 카테고리의 다른 글

Commit comment template  (0) 2008.04.14
이클립스 SVN 플러그인 Subversive 설치  (2) 2008.04.04
Spring Tool Suite: Knowledge Base  (3) 2008.03.20
Maven + Clover  (1) 2008.03.18
Tomcat 6, MySQL에 JIRA(WAR/EAR 버전) 설치하기  (6) 2008.03.05
Bamboo 멋쟁이 - CI 와 테스트  (0) 2008.03.04
Eclipse의 막강한 Ctrl + h  (4) 2008.02.15
Eclipse Working Set 사용하기  (5) 2008.02.05
Eclipse에서 Static Import 편하게 쓰려면  (8) 2008.01.24
98% Line Coverage  (2) 2008.01.21
Cobertura 사용기  (4) 2008.01.18
top

Write a comment.