확장메뉴
주요메뉴


소득공제 EPUB
파트너샵보기 공유하기
eBook

자바와 JUnit을 활용한 실용주의 단위 테스트

: 클린 코드의 핵심, 단위 테스트로 소프트웨어 품질을 향상시킨다!

[ EPUB ]
리뷰 총점8.0 리뷰 1건 | 판매지수 672
정가
20,800
판매가
20,800(종이책 정가 대비 20% 할인)
YES포인트
구매 시 참고사항
{ Html.RenderPartial("Sections/BaseInfoSection/DeliveryInfo", Model); }
한 눈에 보는 YES24 단독 선출간
매월 1~7일 디지털머니 충전 시 보너스머니 2배 적립
★90일 대여점★ 이렇게 싸도 대여?
[READ NOW] 2022년 4월호
eBook 전종 10%할인+5%적립 무한발급 슈퍼쿠폰
6월 전사
6월 쇼핑혜택
1 2 3 4 5

품목정보

품목정보
출간일 2019년 07월 22일
이용안내 ?
  •  배송 없이 구매 후 바로 읽기
  •  이용기간 제한없음
  •  TTS 가능?
  •  저작권 보호를 위해 인쇄 기능 제공 안함
지원기기 크레마,PC(윈도우),아이폰,아이패드,안드로이드폰,안드로이드패드,전자책단말기(일부 기기 사용 불가),PC(Mac)
파일/용량 EPUB(DRM) | 23.81MB ?
ISBN13 9791160508642

이 상품의 태그

소개 책소개 보이기/감추기

『실용주의 프로그래머』의 앤디 헌트와 데이브 토마스가 알려주는

실용주의 단위 테스트!



클린 코드의 핵심인 단위 테스트, 어디서 어떻게 시작해야 할까? 책에서는 단위 테스트의 개념과 작성 이유부터 테스트 가이드라인, 목 객체 사용법, 자동화된 단위 테스트, 리팩토링까지 단위 테스트의 핵심 내용을 설명한다. 또한, 자바와 JUnit으로 단위 테스트를 단계별로 실습할 수 있게 구성했다. 단위 테스트가 처음이거나, 단위 테스트를 좀 더 깊게 이해하고 싶은 분들에게 추천한다.

목차 목차 보이기/감추기

1부 단위 테스트의 기초



1장 첫 번째 JUnit 테스트 만들기

1.1 단위 테스트를 작성하는 이유

1.2 JUnit의 기본: 첫 번째 테스트 통과

__1.2.1 프로젝트 설정

__1.2.2 JUnit 테스트 좀 더 이해

__1.2.3 JUnit 실행

1.3 테스트 준비, 실행, 단언

1.4 테스트가 정말로 뭔가를 테스트하는가?

1.5 마치며



2장 JUnit 진짜로 써 보기

2.1 테스트 대상 이해: Profile 클래스

2.2 어떤 테스트를 작성할 수 있는지 결정

2.3 단일 경로 커버

2.4 두 번째 테스트 만들기

2.5 @Before 메서드로 테스트 초기화

2.6 이제 어떤가?

2.7 마치며



3장 JUnit 단언 깊게 파기

3.1 JUnit 단언

__3.1.1 assertTrue

__3.1.2 assertThat은 명확한 값을 비교

__3.1.3 중요한 햄크레스트 매처 살펴보기

__3.1.4 부동소수점 수를 두 개 비교

__3.1.5 단언 설명

3.2 예외를 기대하는 세 가지 방법

__3.2.1 단순한 방식: 애너테이션 사용

__3.2.2 옛 방식: try/catch와 fail

__3.2.3 새로운 방식: ExpectedException 규칙

__3.2.4 예외 무시

3.3 마치며



4장 테스트 조직

4.1 AAA로 테스트 일관성 유지

4.2 동작 테스트 vs 메서드 테스트

4.3 테스트와 프로덕션 코드의 관계

__4.3.1 테스트와 프로덕션 코드 분리

__4.3.2 내부 데이터 노출 vs 내부 동작 노출

4.4 집중적인 단일 목적 테스트의 가치

4.5 문서로서의 테스트

__4.5.1 일관성 있는 이름으로 테스트 문서화

__4.5.2 테스트를 의미 있게 만들기

4.6 @Before와 @After (공통 초기화와 정리) 더 알기

__4.6.1 BeforeClass와 AfterClass 애너테이션

4.7 녹색이 좋다: 테스트를 의미 있게 유지

__4.7.1 테스트를 빠르게

__4.7.2 테스트 제외

4.8 마치며



2부 빠른 암기법 습득



5장 좋은 테스트의 FIRST 속성

5.1 FIRST: 좋은 테스트 조건

5.2 [F]IRST: 빠르다

5.3 F[I]RST: 고립시킨다

5.4 FI[R]ST: 좋은 테스트는 반복 가능해야 한다

5.5 FIR[S]T: 스스로 검증 가능하다

5.6 FIRS[T]: 적시에 사용한다

5.7 마치며



6장 Right-BICEP: 무엇을 테스트할 것인가?

6.1 [Right]-BICEP: 결과가 올바른가?

6.2 Right-[B]ICEP: 경계 조건은 맞는가?

6.3 경계 조건에서는 CORRECT를 기억하라

6.4 Right-B[I]CEP: 역 관계를 검사할 수 있는가?

6.5 Right-BI[C]EP: 다른 수단을 활용하여 교차 검사할 수 있는가?

6.6 Right-BIC[E]P: 오류 조건을 강제로 일어나게 할 수 있는가?

6.7 Right-BICE[P]: 성능 조건은 기준에 부합하는가?

6.8 마치며



7장 경계 조건: CORRECT 기억법

7.1 [C]ORRECT: [C]onformance(준수)

7.2 C[O]RRECT: [O]rdering(순서)

7.3 CO[R]RECT: [R]ange(범위)

__7.3.1 불변성을 검사하는 사용자 정의 매처 생성

__7.3.2 불변 메서드를 내장하여 범위 테스트

7.4 COR[R]ECT: [R]eference(참조)

7.5 CORR[E]CT: [E]xistence(존재)

7.6 CORRE[C]T: [C]ardinality(기수)

7.7 CORREC[T]: [T]ime(시간)

7.8 마치며



3부 더 큰 설계 그림



8장 깔끔한 코드로 리팩토링하기

8.1 작은 리팩토링

__8.1.1 리팩토링의 기회

__8.1.2 메서드 추출: 두 번째로 중요한 리팩토링 친구

8.2 메서드를 위한 더 좋은 집 찾기

8.3 자동 및 수동 리팩토링

8.4 과한 리팩토링?

__8.4.1 보상: 명확하고 테스트 가능한 단위들

__8.4.2 성능 염려: 그러지 않아도 된다

8.5 마치며



9장 더 큰 설계 문제

9.1 Profile 클래스와 SRP

9.2 새로운 클래스 추출

9.3 명령-질의 분리

9.4 단위 테스트의 유지 보수 비용

__9.4.1 자신을 보호하는 방법

__9.4.2 깨진 테스트 고치기

9.5 다른 설계에 관한 생각들

9.6 마치며



10장 목 객체 사용

10.1 테스트 도전 과제

10.2 번거로운 동작을 스텁으로 대체

10.3 테스트를 지원하기 위한 설계 변경

10.4 스텁에 지능 더하기: 인자 검증

10.5 목 도구를 사용하여 테스트 단순화

10.6 마지막 하나의 단순화: 주입 도구 소개

10.7 목을 올바르게 사용할 때 중요한 것

10.8 마치며



11장 테스트 리팩토링

11.1 이해 검색

11.2 테스트 냄새: 불필요한 테스트 코드

11.3 테스트 냄새: 추상화 누락

11.4 테스트 냄새: 부적절한 정보

11.5 테스트 냄새: 부푼 생성

11.6 테스트 냄새: 다수의 단언

11.7 테스트 냄새: 테스트와 무관한 세부 사항들

11.8 테스트 냄새: 잘못된 조직

11.9 테스트 냄새: 암시적 의미

11.10 새로운 테스트 추가

11.11 마치며



4부 더 큰 단위 테스트 그림



12장 테스트 주도 개발

12.1 TDD의 주된 이익

12.2 단순하게 시작

12.3 또 다른 증분 추가

12.4 테스트 정리

12.5 또 다른 작은 증분

12.6 다수의 응답 지원: 작은 설계 우회로

12.7 인터페이스 확장

12.8 마지막 테스트들

12.9 문서로서의 테스트

12.10 TDD의 리듬

12.11 마치며



13장 까다로운 테스트

13.1 멀티스레드 코드 테스트

__13.1.1 단순하고 똑똑하게 유지

__13.1.2 모든 매칭 찾기

__13.1.3 애플리케이션 로직 추출

__13.1.4 스레드 로직의 테스트 지원을 위해 재설계

__13.1.5 스레드 로직을 위한 테스트 작성

13.2 데이터베이스 테스트

__13.2.1 고마워, Controller

__13.2.2 데이터 문제

__13.2.3 클린 룸 데이터베이스 테스트

__13.2.4 controller를 목 처리

13.3 마치며



14장 프로젝트에서 테스트

14.1 빠른 도입

14.2 팀과 같은 편 되기

__14.2.1 단위 테스트 표준 만들기

__14.2.2 리뷰로 표준 준수 높이기

__14.2.3 짝 프로그래밍을 이용한 리뷰

14.3 지속적 통합으로 수렴

14.4 코드 커버리지

__14.4.1 커버리지는 어느 정도여야 하는가?

__14.4.2 100% 커버리지는 진짜 좋은가?

__14.4.3 코드 커버리지의 가치

14.5 마치며



부록 A 인텔리제이 IDEA와 넷빈즈에서 JUnit 설정

A.1 인텔리제이 IDEA

A.2 넷빈즈

저자 소개 (4명)

eBook 회원리뷰 (1건) 리뷰 총점8.0

혜택 및 유의사항?
구매 자바와 JUnit을 활용한 실용주의 단위 테스트 내용 평점4점   편집/디자인 평점4점 YES마니아 : 플래티넘 스타블로거 : 골드스타 느*한 | 2020.08.08 | 추천0 | 댓글0 리뷰제목
자바로 프로그램을 작성하고 있지만 사실 테스트하는 일이 가장 귀찮은 작업이다.자바에서 JUnit이라는 걸 제공하고 있다는걸 알고는 있지만어떻게 사용하는지 알지도 못하고, 귀찮기도 하고 해서 배우지 못하고 있었다.테스트의 귀차니즘과 새로 배움의 귀차니즘이 충돌로 인해그래도 하나 새로 배우는게 좋을 것 같아서 이 책을 구입했다.이론적인 내용과 실전의 내용을 잘 다루고 있다;
리뷰제목

자바로 프로그램을 작성하고 있지만 사실 테스트하는 일이 가장 귀찮은 작업이다.

자바에서 JUnit이라는 걸 제공하고 있다는걸 알고는 있지만

어떻게 사용하는지 알지도 못하고, 귀찮기도 하고 해서 배우지 못하고 있었다.

테스트의 귀차니즘과 새로 배움의 귀차니즘이 충돌로 인해

그래도 하나 새로 배우는게 좋을 것 같아서 이 책을 구입했다.

이론적인 내용과 실전의 내용을 잘 다루고 있다.

가장 기본적인 내용부터 심도있는 내용까지 다르고 있어서 배우는데 좋았던 것 같다.



댓글 0 이 리뷰가 도움이 되었나요? 공감 0

한줄평 (1건) 한줄평 총점 10.0

혜택 및 유의사항 ?
구매 평점5점
잘 봤습니다.
이 한줄평이 도움이 되었나요? 공감 0
YES마니아 : 플래티넘 느*한 | 2020.08.08
뒤로 앞으로 맨위로 aniAlarm