완벽함이란 더 이상 무엇인가를 더할 것이 없을때 이루어 지는 것이 아니라, 더 이상 무엇인가를 뺄 것이 없을 때 이루어진다. - 앙뜨완느 마리 로제 드 생떽쥐페리
by 미친병아리 이글루스 피플 2006 이글루스 TOP 100 2007 이글루스 TOP 100
포토로그
메뉴릿
주저리 주저리
라이프로그
Unit Test에 관한 메모..
우하하님의 이글루 글을 보고 생각이 나서.. 예전에 사내 게시판에 올렸던 내용을 옮겨본다..

좋은 품질의, 유지보수가 용이한 S/W를 만들기 위해서는 정말 많은 노력과 정성, 그리고 실력이 필요한 것 같다..
아래 내용은 Extreme Programming Installed에서 발췌하여 메모해둔 내용이다..
- Unit Test는 개발자의 친구, 개발자가 작성한다..

- 리팩토링을 제대로 하려면 견고한 Unit Test가 있어야만 한다.. 이거 없으면, 리팩토링이 힘들다..

- 리팩토링 하기 전에 테스트부터 작성한다.. 기능 추가전에 테스트 부터 작성한다..

- 기능이 수정되면 테스트도 같이 수정해야 한다..
결국, 기능 추가/수정전에 테스트부터 작성하라는 소리가 더 합리적이다.. (TDD)

- 디버깅 시간을 현격하게 줄여준다.. 프로그래머들이 소모하는 대부분의 시간은 디버깅 시간이다..

- 버그를 찾으면 수정하는데 시간은 비교적 굉장히 짧다..
하지만, 어디가 잘못되어 그러한 버그가 나오는지 알아내는데 상당한 시간을 들여야 한다.. 잘 작성된 Unit Test는 버그를 찾는 시간을 줄여준다..

- 모든 테스트는 자동화 되어 있어야 하며, 실행결과를 스스로 판단할 수 있어야 한다..

- 테스트를 만들고 최대한 자주 실행하라..
그러면 문제가 생긴 경우 테스트를 통과한 다음 부분에 문제가 생길 가능성이 높기 때문에, 검토할 시간과 양이 현격히 줄고, 이는 생상성을 극적으로 높여준다..

- 버그리포트를 받으면
먼저, 그 버그가 통과될 수 없도록 테스트 프로그램을 수정한다.. 그리고 버그를 수정한다..

- 너무 완벽한 테스트를 작성하려고 하지 않는다..
잘못된 가능성이 높은 부분과 그럴 우려가 드는 부분만 테스트를 한다..
너무 많은 테스트를 가지려고 하면 오히려 부작용이 많다..
Unit Test에 대한 중요성을 강조한 책들.. 이 책들 덕분에 Unit Test라는 것을 알게 되었고, CppUnit 이라는 프로그램도 알게되었다.. 물론, 앞 3권의 책들은 비단 Unit Test 뿐만 아니라 개발자로서 많은 도움과 생각 꺼리를 제공해주는, 반드시 읽어볼만한 책들이라 생각이 된다..


뒤 2권의 책들은 Unit Test 덕분에 더 관심을 가지게 된 책들인데.. 흐흐.. 사실 조금 읽고 거의 읽지 않고 있다.. 이상스레 생각보다 읽기 쉽지 않다.. 처음엔 Visual J++을 설치하고, Swing도 세팅하고, JUnit도 세팅해서 Java 코드 따라하며 열심히 읽었는데.. 영, 진도가 안나간다.. 쩝, 정성 부족이지 모.. 헐헐헐.. 맞다.. 이것 때문에 이클립스도 설치했는데 말이지..
도체 TDD란 무엇이며, 어케하는 것이며, 왜 좋은지를 알기 위해서인데.. 난 잘 이해하고 있다고 생각하는데, 왜 읽기가 쉽지 않은 것일까 ?
by 미친병아리 | 2004/02/06 02:09 | ▣ 책이야기 ▣ | 트랙백(1) | 핑백(2) | 덧글(5)
트랙백 주소 : http://madchick.egloos.com/tb/263754
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Tracked from HardCore in .. at 2008/01/29 01:51

제목 : CppUnit Cookbook
리팩토링이라는 책을 읽다가 단위 테스트에 대한 필요성을 느끼고 예전 부터 한번 알아봐야지 하고 마음만 먹던 CppUnit에 대해서 간략한(?)하게 테스트 케이스 작성 방법에 대해서 요약해 보았습니다. 원문은 http://cppunit.sourceforge.net/doc/1.9.11/cppunit_cookbook.html#cppunit_cookbook 에서 확인 하실 수 있습니다. Simple Test Case 코드가 정상적으로 작동하고 있는지를......more

Linked at 미친병아리가 삐약삐약 : 볼랜.. at 2007/11/25 11:43

... 뭐가 틀린지 궁금하다.. 어떻게 동작이 되는지도.. EJB 관련 서적을 한권 구입을 해봐야겠다.. WAS들이 무슨 일들을 해주는지 궁금하잖아.. 그간 자바 개발툴로는 Visual J++과 이클립스를 사용해봤는데 (사실 이클립스는 거의 사용 못해봤다고 보는게 맞고.. 많은 기능들 중 극히 일부만 사용해본 상태니..), J빌더는 과연 어떤 모습으로 다가올지 ... more

Linked at 미친병아리가 삐약삐약 : Ex.. at 2008/05/03 20:32

... 대해서는 우연히 듣게되어 도대체 뭔가 싶어 무작정 사서 읽게된 Extreme Programming Installed, XP 도입을 위한 실전 입문이라는 책을 통해 알게되었는데.. 그때 읽은 기억중 가장 기억에 남는 대목은 책을 다 읽고 나중에 읽게된 책의 마지막 부분에 붙은 저자와의 인터뷰 내용이었다.. 바로 아래에 인용된 바로 이 부분이다.. 매일 우리에게 급여를 ... more

Commented by 狂風 at 2004/02/06 12:18
저희 회사에서도 TDD나 . 리펙토링 x 프로그래밍에 대해서 스터디도 하는데. 남의 방법을 그리 쉬히 따라하기란. 저는 또한 무조건 따라하기 보다는 취합해서 제 스타일대로 하는지라. TDD의 기본취지는 제 스타일이랑 비슷합니다만. ㅋㅋ
Commented by 狂風 at 2004/02/06 12:19
결론은 완벽히 익히기가 쉽지 않더라는...
Commented by LikeJAzz at 2004/02/07 11:59
주제와는 다른 얘기지만 J++ 은 언어적으로 정말 최고였다 사라져서 너무 아깝다라는 의견이 있더군요
Commented by killic at 2004/02/11 10:46
전 직장 동료와 TDD 를 기반으로 계산기만드는 작업을 해본적이 있습니다. 물론 그 동료는 TDD 에 어느 정도 경험은 있지만, 익숙한 상태는 아니었습니다.
1+1 에 대한 테스트를 만들고 숫자 부분을 변수로 고치고, 다시 테스트 하고, 테스트 유닛을 다시 고치고... 세시간 동안 사칙연산 우선 순위도 구분 못하는 것을 만들고 끝났지만, 재밌었고 신선한 경험이었습니다. 단순히 책만 보기엔 너무 지루한 듯 싶습니다. 옆에 같이 의견 나눌 사람이 있다는게 중요한것 같습니다.
Commented by 미친병아리 at 2004/02/14 17:50
狂風님 : 네.. 무조건 따라하기 좋지 않죠.. 하지만, 새로운 것 혹은 남의 스타일을 무조건 받아들이지 않으려는 성향은 더 문제인 것 같습니다..
간혹 천부적으로 TDD라는 것을 안해도 코드를 잘 만들어내는 사람들도 있기는 하더군요.. 이런 사람들이 아닌 저같은 범인들은 TDD 스타일이 많은 도움이 된다고 생각합니다.. 완벽히 익히기, 쉽지 않죠.. 뭐든 잘 하려면 아무리 쉬워보이는 것도 쉽지 않은 듯 합니다..

LikeJAzz님 : 음.. 언어적으로는 Java와 같은데.. 혹, 개발환경을 말씀하시는 것 같습니다.. Java를 가지고 Win32에서 하는 모든 일이 (COM 생성 혹은 자신이 COM 개체되기 등등) 가능했으니.. 물론, 이것 때문에 Sun의 고소를 받게 되는 계기가 되기도 했습니다.. 저도 VJ++ 좋아하던 개발툴이었는데 1.1에서 어느날 갑자기 6.0이 되면서 비베처렴 IDE가 변해서리.. 그래도 지금도 설치해두고 사용중이랍니다.. 이클립스와 비교하면서..

killic님 : 네.. 동감입니다.. 직접 해보는게 짱이죠.. 비슷한 생각을 갖는 사람들과 의견을 나눌 수 있는건 정말 행복한 일입니다.. 그런면에서는 전 좋은 환경에서 근무하고 있는 것 같습니다.. 흐흐흐..

:         :

:

비공개 덧글

Creative Commons License

< 이전페이지 다음페이지 >


이글루 파인더
카테고리
태그
최근 등록된 덧글
하하^^ 저도 요즘 뜸하..
by 김정수 at 11/27
잘 봤습니다. UML에 대..
by ohyecloudy at 11/21
잘 지내시죠? 여전히 일로..
by hehua at 11/20
월동준비없이 간만에 오..
by 쩌비 at 11/20
블로그가 업데이트 되어..
by Funny at 11/19
간만의 포스팅 반갑습니..
by 135th at 11/19
오랜만이세요.. 어케 ..
by zoops at 11/19
오래간만 입니다. :)
by 마음으로 찍는 사진 at 11/19
오랜만에 돌아오셨네요~..
by jely at 11/19
좋은평가 감사드립니다. ..
by ilsooni at 11/16
참 오래간만이시네요.^^..
by gonny at 11/03
ㅅㅂ 나도 몰른다고
by 야동매니아 at 10/20
하하, 이런경험 있는데..
by 씩씩한강냉이 at 10/03
꺅. 한글이 위대하기에 ..
by 씩씩한강냉이 at 10/03
소설식이라 편하고 재미..
by ohyecloudy at 10/01
환영합니다 미병님~^^
by Paromix at 09/16
온국민이 싫어하고 혐오..
by 닭날다 at 09/16
살아계셨군요... 계속..
by 미친감자 at 09/08
가끔씩 들리는데, 진짜..
by 랄라 at 09/05
웰컴~투~~~~~~..
by S2nNAMU at 08/25
최근 등록된 트랙백
데꾸벅의 생각
by techbug's me2DAY
UML, 실전에서는 이것..
by Ohyecloudy's Progr..
데드라인 - 소설로 재미..
by Ohyecloudy's S3
실전적 문장비법 글쓰기..
by 블로거1.0의 WEB2.0 도전기
우분투 리눅스 8.10 하루..
by joogunking
마이클잭슨 사망 소식들..
by Bluesky
후아유(2002) : 2000년대 ..
by 생활의 발견
知的人의 생각
by peter_c's me2DAY
톰캣!!
by 나두미키님의 이글루
정규 표현식 완전 해부와..
by 김재호의 디지털보단 아..
HTML 소스 제대로 보자,..
by [부동산]개발.정비구역
내 손안의 PC - 자바가 ..
by 上善若水
Stringbuilder OutOfMe..
by Pinch of Smack for D..
웹 오피스 정리
by Web N Bizr
네이버 블로그 검색 - ..
by InformationRedesign
에반게리온: 서 - 사운드..
by LG전자 XCANVAS홈..
블로그에서 수익은 기대..
by IT, 모바일, 엔터테..
"다음으로 지원한 이메일..
by 민노씨.네
알라딘 TTB2 둘러보다
by NKOKON's Web-Note
문답 # ActiveX 문답
by 아이리스가 만개한 언덕..
이글루링크
EBC (Egloos Broad..
erehwon.LAB
About willy
Living Loving and L..
修身齊家萬事成
【 이름쟁이™의 눈으로 】
개 풀 뜯어먹는 소리
觀鷄者의 망상 공간
Oz in Wonderland
김명신의 즐거운 하루
함께.. 늘 그렇게..
荷花(hehua)
소스코드위를 걷다.....
네러티브 오프로드
zoops 이야기
까모의 룰루랄라~
▒ 제닉스의 사고뭉치 ▒
河伊兒의 고물상
가로수들은 여전히 제자..
餘分D: physics and fun
극한추리 hansang's wo..
길고양이 이야기
어쨌건간에 흘러가는 者
선인장 일지
~★~ 우하하!!~ 프로..
without coffee
Lady Nariel's Golde..
검색엔진 루씬 Lucene..
fire, walk with me
디지털을 말한다 by oojoo
♠후리지아 향기처럼♠
일상 생활 속의 파편들
뽐뿌 inside
책읽는 엄마의 보석창고
Mono log
blogger jely
반복되는 일상속의 비정..
골룸의 골방
질풍 17주의 머브러브 라..
maniacs
AURA's Showcase
ozzyz review 허지웅..
디제의 애니와 영화 이야기
ANTIEGOIST : GyuHo..
미달이의 육아일기
All about IT Trends
Suicide Solution
얼음집
Trouble n Travel
모기불통신
Trip
찬별은 초식동물
숲 속 작은 섬
snowcat blog
전도서에 바치는 장미
한글이 꿈틀
이우진의 UCC 제작실 ..
INVENT
위로..위로..위로..
woody's film review
Show me the money
전자음악 알아보기
sunny's store
이규영 연예영화 블로그
◀ M.HOUSE - Masade..
Urban Living
쉽니다.
roadster
무디의 무책임한 세상
이제 다시... 바라보다.
random life
Beyond Web
ricordati di me
Jania's Blog
Gaious 功房 네오베..
애자일 이야기
- Last Paromix -
T9T9 Research Center
양군 블로그
소프트웨어 이야기
식사일보 food daily
Software Engineering..
티오
고재관의 블로그
mocca
yundream의 프로그래..
통TON
lalou
생각이 없는 블로그
이전블로그
rss

skin by 이글루스