나에게 필요한 지식과 기술을 검색해 보세요.

테스트 주도 개발 : 고품질 쾌속개발을 위한 TDD 실천법과 도구

지은이

채수원

출간일

2010.06.08

레벨

초중급

평점

4(6명)

정가

30,000

판매가

27,000

총 결제 금액

10%

27,000

적립 예정

1,350P

쪽수

584P

ISBN

9788979147261

브랜드

한빛미디어
효율적인 설계와 간결한 코드를 만드는 필수 TDD 기법

TDD는 흔히 "업무 코드를 작성하기 전에 테스트 코드를 먼저 만드는 것!"으로 정의한다. 하지만 실제 프로젝트가 진행되면서 이 원칙을 지키는 것은 쉽지 않다. 그 이유는 무엇일까? 일단 당장의 개발 일정에 급급하여 정말 필요한 프로세스가 무엇인지를 간과하게 되는 개발 현실이 문제이다. 그러나 얼핏 보면 처음에는 멀리 돌아가는 것처럼 보여도 최종적인 목표에 무사히 그리고 단기간에 도달하기 위해서는 테스트 주도 개발법이 유용한 해결책이 된다. 결국 TDD는 절대 스쳐 지나가서는 안 될 고품질 소프트웨어를 만드는 빠르고 유쾌한 개발 비법인 것이다.

이 책은 초급 개발자들도 쉽게 학습할 수 있도록 아주 기본적인 테스트 주도 개발 방법은 물론 고급 개발자로 나아가기 위한 효과적인 설계 방법까지 다룬다. 또한 보기 좋고 간결한 코드를 만들도록 돕는 유용한 개발 기법을 실용적인 예제를 통해 체계적으로 설명한다.

이제 더 이상 TDD를 어려워하지 말자! 고객을 만족시키고 프로젝트 개발 조직의 사기를 올리는 프로젝트 개발 프로세스와 성공적인 프로젝트를 향한 비법이 이 책에 담겨 있다.

추천사

항상 덜 고통스럽고 유쾌한 길이 존재한다는 믿음을 가지고, TDD 수련을 즐겨보시기 바랍니다. 가시는 길에 진달래가 피었거든 가만히 앉아서 구경도 하시면서 말이죠. 꽃 구경할 시간 없다고요? 뭐가 그리 바쁘십니까! 아, 이 책도 챙겨가세요. 그 여정에 이 책이 좋은 길동무가 될 겁니다. - 애자일 컨설팅 대표 김창준(추천사 중에서)

지은이가 말하는 이 책은 . . .

저자 입장에서 이런 말을 하는 게 어떻게 들릴지 모르겠습니다만,
꼭 한 번 읽어보시기 바랍니다.
책에 들이는 시간이 절대 아깝지 않도록 최선을 다해 집필했습니다.
사실 원래 제가 생각했던 책 제목은 이랬습니다.

"더 나은 소프트웨어와,
보다 더 나은 개발자의 삶을 위한 테스트 주도 개발"

우리는 TDD를 통해 더 나은 소프트웨어를 만들 수 있고,
더 나은 삶까지도 가꾸어 나갈 수 있다고 저는 믿습니다.
이제 그 믿음을 여러분과 함께 만들어 갔으면 좋겠습니다.
  • 초급 개발자들도 TDD에 대해 쉽게 배우고 적용할 수 있도록 노력했습니다.
  • TDD를 실제 프로젝트에 적용할 때 발생할 수 있는 문제 상황들과 해결책을 담았습니다.
  • 좋은 소프트웨어를 만들기 위해 반드시 알아야 할 내용, 꼭 알고 있어야 하지만 쉽게 놓치곤 하는 내용들도 함께 담았습니다.

저자

목차

1 테스트 주도 개발
 
    1.1 흔하디 흔한 소프트웨어 개발 방식
    1.2 테스트 주도 개발(TDD)
    1.3 테스트 주도 개발의 목표
    1.4 테스트 주도 개발의 기원
    1.5 개발에 있어 테스트 주도 개발의 위치
    1.6 테스트 주도 개발의 진행 방식
    1.7 실습 먼저 시작해보기
    1.8 TDD의 장점
 
2 JUnit과 Hamcrest
 
    2.1 JUnit
    2.2 비교표현의 확장: Hamcrest 
    2.3 정리
    전문가 인터뷰 김창준
 
3 TDD 좀 더 잘하기
 
    3.1 테스트 케이스 클래스의 위치
    3.2 테스트 메소드 작성 방식
    3.3 테스트 케이스 작성 접근 방식
    3.4 TDD의 한계
    전문가 인터뷰 변신철
 
4 한계 돌파를 위한 노력, Mock을 이용한 TDD
 
    4.1 Mock 객체
    4.2 Mock에 대한 기본적인 분류 개념, 테스트 더블
    4.3 Mock 프레임워크
    4.4 Mock 프레임워크 마무리
    전문가 인터뷰 황상철
 
5 데이터베이스 테스트: DbUnit
 
    5.1 DbUnit의 장점
    5.2 데이터셋 
    5.3 DbUnit 데이터셋의 종류
    5.4 DbUnit의 DB 지원 기능
    5.5 DbUnit과 Ant
    5.6 정리
    전문가 인터뷰 안영회
 
6 단위 테스트 지원 라이브러리: Unitils
 
    6.1 Unitils를 사용하기 위한 환경 준비
    6.2 Unitils의 단위 테스트 지원 기능들
    6.3 Unitils 모듈
    6.4 DbUnit과 함께 사용하는 데이터베이스 지원 모듈
    6.5 DBMaintainer: DB를 자동으로 유지보수해주는 DB 유지보수 관리자
    6.6 기타 지원 모듈들
    전문가 인터뷰 박재성
 
7 개발 영역에 따른 TDD 작성 패턴
 
    7.1 일반적인 애플리케이션
    7.2 웹 애플리케이션
    7.3 데이터베이스
    7.4 안티패턴(anti-pattern), 전통적으로 잘못 인식되어 있는 테스트 메소드의 리팩토링
    전문가 인터뷰 이일민
 
8 TDD에 대한 다양한 시각
 
    8.1 TDD와 소프트웨어 디자인
    8.2 TDD 유의사항
    8.3 TDD와 리팩토링
    8.4 TDD와 짝 프로그래밍
    8.5 TDD와 심리학
    8.6 TDD를 어렵게 만드는 요인
    8.7 행위 주도 개발
 
9 자주 접하게 되는 질문들, FAQ
 
10 실습 예제
 
    10.1 자동판매기 잔돈 계산 모듈
    10.2 비디오 가게
 
11 테스트 자동화와 커버리지
 
    11.1 테스트 케이스 수행 자동화: Ant
    11.2 테스트 커버리지
 
부록 A 본 책보다 더 가치 있을 수도 있는 "부록"
 
    A.1 놓치기엔 아까운 JUnit 4의 고급 기능들
    A.2 스프링으로 JUnit 기능 확장하기
    A.3 코드 리뷰
    A.4 3분 안에 Java DB 설치하고 확인까지 마치기
    A.5 TDD에 대한 연구 보고서(테스트 주도 개발을 통한 품질 향상 실체화)
    A.6 TDD 학습에 도움이 되는 책과 문헌
 
찾아보기 

리뷰

전체 평점

4

오탈자

등록된 오탈자가 없어요

오탈자를 발견하셨다면 작성해주세요.

30,000

10%

27,000