1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

Jasmine 자바스크립트 테스팅(acorn+PACKT Technical Book)
저자 : 파울로라고나 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 이일웅

2015.03.25 ㅣ 200p ㅣ ISBN-13 : 9788960776845

정가20,000
판매가18,000(10% 할인)
적립금 1,000원 (5%)
배송일정 04월 30일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 인터넷 > 웹프로그래밍(웹디자...

[목 차]

1 재스민 시작
자바스크립트: 나쁜 점들
재스민과 BDD
내려받아 실행해보기
정리

2 스펙 작성
주식 투자 조회기 애플리케이션
재스민의 기본과 BDD 사고방식
구성과 정리
describe 중첩
- 구성과 정리
- 행위를 공유하여 스펙 코딩
매처의 이해
- 커스텀 매처
- 내장 매처
- toEqual
- toBe
- toBeTruthy, toBeFalsy
- toBeUndefined, toBeNull, toBeNaN
- toBeDefined
- toContain
- toMatch
- toBeLessThan, toBeGreater
- toThrow
정리

3 프론트엔드 코드 테스팅
컴포넌트 관점으로 생각하기(뷰)
모듈 패턴
HTML 픽스처 사용
기본적인 뷰 코딩 규칙
- 뷰는 DOM 엘리먼트를 캡슐화해야 한다
- 뷰를 옵저버와 통합해야 한다
jQuery 매처로 뷰 테스팅
- toBe
- toContainHtml
- toContain
- toHaveValue
- toHaveAttr
- toBeFocused
- toBeDisabled
- 기타 커스텀 매처
정리

4 비동기 테스팅: AJAX
시나리오 설정
- 노드JS 설치
- 서버 코딩
- 서버 실행
스펙 작성
- waitsFor() 함수
- runs() 함수
정리

5 재스민 스파이스
빈 스파이 함수
객체 함수에 대한 스파이
DOM 이벤트 테스팅
정리

6 광속 단위 테스팅
재스민 스텁
시논JS
- 시논JS 설치
- 페이크 XMLHttpRequest
- 페이크 서버
정리

7 백본 애플리케이션 테스팅
백본 모델
- 백본 모델 선언
- 모델 속성
- 디폴트 속성값
- 이벤트
- 동기화와 AJAX 요청
백본 콜렉션 테스팅
- 콜렉션 선언
- 동기화와 AJAX 요청
백본 뷰 테스팅
- 뷰 선언
- el 프로퍼티
- 렌더링
- 모델 변경 시 뷰 업데이트
- DOM 이벤트 바인딩
백본 라우터 테스팅
- 라우터 정의
- 경로 정의
- 라우터 활용
- 라우터는 보내기만 한다
정리

8 빌드 자동화
리콰이어JS
- 모듈 정의
- 프로젝트 설정
- SpecRunner.JS 파일 생성
- RequireJS 설정
- 모듈 테스팅
- 운영 환경을 위한 최적화
팬텀JS 헤드리스 테스팅
- 팬텀JS 다운로드 및 설치
- 브라우저를 열지 않고 테스트
그런트
- 그런트 설치
- 프로젝트 설정
- 리콰이어JS 옵티마이저 태스크
- 재스민 태스크
- 변화 감시 및 스펙 실행
NPM 의존성 관리
정리

9 마무리

부록 A 제이쿼리 플러그인 테스팅
정리

부록 B 트래비스 CI를 이용한 지속적 통합
트래비스 CI에 프로젝트 추가
프로젝트 설정
정리

부록 C 재스민 2.0과 미래
출시 후보 2
주요 업데이트
커스텀 매처 생성 문법 개편
새로운 비동기 스펙 문법
새로운 스파이 문법
정리
펼쳐보기
테스트 주도 개발(TDD), 행위 주도 개발(BDD)을 먼저 소개하고, 이러한 테스팅 개념을 구현한 재스민 툴의 사용법을 실제적인 자바스크립트 애플리케이션의 예를 들어 자세히 설명한다. 재스민을 이용한 단위 테스팅 방법뿐만 아니라 시논JS(SinonJS), 백본JS(BackboneJS), 리콰이어JS(RequireJS), 그런트JS(GruntJS) 등 모던 자바스크립트 개발에 특화된 다양한 툴들을 독자들이 자연스럽게 섭렵하여 실무에 바로 응용할 수 있도록 안내한다.

■ 테스트 주도의 개발 방식 습득
■ 리콰이어JS로 애플리케이션 코드 모듈화
■ 테스트가 완료된 제이쿼리 플러그인 생성
■ 비동기 테스팅에서의 문제 해결과 모범 사례
■ 신속한 단위 테스팅을 수행하기 위한 스텁(Stub)과 스파이(Spy) 사용
■ 테스트 주도의 백본 애플리케이션
■ 운영 환경을 위한 자바스크립트 코드 최적화
■ 그런트JS로 강력한 도구화, 자동화 실현
■ 트래비스 CI(Travis-CI)로 클라우드에서 테스트 실행

1장, ‘재스민 시작’은 자바스크립트 애플리케이션 테스팅의 동기 부여를 해보는 시간이다. BDD의 개념을 소개하고 좋은 테스트를 작성하는 방법을 알아본다. 재스민 소스를 내려받아 테스트를 처음 작성해보는 일이 매우 간단함을 알게 될 것이다.

2장, ‘스펙 작성’에서는 테스트 주도 개발이 의도하는 사고 방식을 익히고, 테스트에 의해 자바스크립트 기능을 처음 코딩하게 될 것이다. 재스민의 기본적인 함수들, 그리고 테스트를 구성하는 방법을 알게 될 것이다. 재스민 매처(Jasmine Matcher)가 어떻게 작동하는지, 코드의 가독성을 향상시키기 위해 커스텀 매처를 작성하는 방법을 다룬다.

3장, ‘프론트엔드 코드 테스팅’에서는 유지 보수성이 좋은 코드를 작성하기 위한 몇 가지 패턴을 다룬다. 컴포넌트 단위로 사고하는 법을 배우고 모듈 패턴으로 어떻게 소스 파일을 잘 정돈할 수 있을지 알게 될 것이다. HTML 픽스처(fixture)의 개념을 소개하고, 화면에 렌더링할 HTML 코드를 서버 요청(request) 없이 어떻게 자바스크립트로 테스트하는지 배울 것이다. 재스민-제이쿼리(Jasmine-jQuery)라는 재스민 플러그인(plugin)과 jQuery로 더 나은 자바스크립트 테스트를 작성하는 법을 다룬다.

4장, ‘비동기 테스팅: AJAX’에서는 AJAX 요청까지 테스트해야 하는 도전적인 상황에서 비동기 코드를 재스민으로는 어떻게 테스트하는지 다룬다. 테스트 픽스처로 아주 간단한 HTTP 서버를 노드JS를 이용하여 만들어볼 것이다.

5장, ‘재스민 스파이’에서는 테스트 더블의 개념과 스파이(Spy)로 행위를 체크하는 방법에 대해 알아본다.

6장, ‘광속 단위 테스팅’에서는 AJAX 테스팅의 몇 가지 이슈들을 다루고 스텁(Stub)이나 페이크(Fake)(시논JS 페이크 서버 같은)로 더 빠른 테스트를 실행하는 방법을 소개한다.

7장, ‘백본 애플리케이션 테스팅’에서는 백본JS(BackboneJS)의 기본이 되는 4개 추상화 기능을 다루고, 테스트를 백본JS 애플리케이션으로 다시 작성하는 방법을 소개한다. 백본JS로 무엇을 테스트하고, 무엇을 테스트하지 말아야 할지 알아볼 것이다.

8장, ‘빌드 자동화’에서는 자동화의 강력한 파워에 대해 실감하게 될 것이다. 대규모 자바스크립트 애플리케이션에서 리콰이어JS(RequireJS)로 어떻게 의존성 관리를 하는지 알게 될 것이다. 모듈과 의존성 단위로 사고하게 되면서 테스트를 모듈 단위로 코딩하는 방법을 소개할 것이다. 또, 운영 환경으로 배포하기 위해 코드를 패킹(packing)하고 최소화하는 방법, 그리고 이러한 과정을 자동화시키는 방법까지 배우게 될 것이다. 팬텀JS(PhantomJS)로 브라우저 창을 띄우지 않고도 모든 테스트를 실행하면서 파일이 변경되면 자동으로 테스트가 재실행되게 하는 기술까지 섭렵하게 될 것이다.

9장, ‘마무리’에서는 자바스크립트 생태계에서의 테스팅과 도구화(tooling)에 대해 언급할 것이다.

부록 A. ‘제이쿼리 플러그인 테스트’에서는 jQuery 플러그인의 개념과 재스민으로 플러그인 개발을 어떻게 주도할 수 있을지 다룬다.

부록 B. ‘트래비스 CI를 이용한 지속적 통합’에서는 트래비스 CI(Travis CI)를 사용하여 자바스크립트 애플리케이션을 지속적으로 통합하기 위한 환경을 마련할 것이다.

부록 C. ‘재스민 2.0과 미래’에서는 앞으로 출시될 재스민 2.0 버전에서 바뀔 중요한 변경 사항들과 기존 버전에서 단계적으로 마이그레이션하는 방법을 소개한다.

펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자
교환/반품 방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
교환/반품 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
교환/반품 비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
교환/반품 불가사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기