[헤드리스 브라우저와 모카를 활용한]
노드로 하는 웹 앱 테스트 자동화
- 원서명Using Node.js for UI Testing (ISBN 9781782160526)
- 지은이페드로 테세이라
- 옮긴이조효성
- ISBN : 9788960774827
- 15,000원
- 2013년 10월 23일 펴냄 (절판)
- 페이퍼백 | 176쪽 | 188*235mm
- 시리즈 : acorn+PACKT
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
노드 텃 비디오 튜토리얼(Node Tuts video tutorial)로 이미 잘 알려진 페드로 테세이라가 집필한 책이다. 이 책에서 독자는 범용 웹 테스트 프레임워크를 지원하는 헤드리스 브라우저인 좀비와 UI 테스트에 적합한 모카를 이용하여 노드 기반의 웹 애플리케이션 UI를 테스트하는 과정에서 소스코드 레벨에서 테스트 시나리오 적용, 이슈 디버깅, 그리고 최종 결과 화면 표시를 손쉽게 따라할 수 있다.
이 책에서 다루는 내용
- 모카를 이용한 테스트 절차 코드 작성
- Node.js와 Flatiron.js를 이용한 웹 애플리케이션 작성
- HTML 도큐먼트를 헤드리스 브라우저 좀비에 로드
- 좀비를 이용한 사용자 이벤트 발생
- 애플리케이션 동작 테스트를 위해 DOM에 쿼리 요청
- 애플리케이션에 복잡한 기능의 이벤트 적용
- 복합적인 사용자 상호작용과 AJAX 호출 발생과 테스트
- 좀비 브라우저 상태 값 검사
이 책의 대상 독자
이벤트 기반 프로그래밍 경험이 있는 자바 개발자를 위한 것이다. 예를 들어, 이벤트 콜백 함수 설정과 AJAX 함수를 호출할 수 있는 웹 페이지 컨텍스트에서 자바스크립트를 사용할 때 좀 더 유연한 학습을 경험할 것이다. 실제로 Node.js를 써본 적이 있다면 좀 더 원활한 학습이 가능하지만 꼭 필요한 요구사항은 아니다.
이 책의 구성
- 1장 Zombie.js로 시작하기는 좀비의 동작 방법과 테스트할 수 있는 애플리케이션 타입을 설명한다.
- 2장 웹 앱 작성은 Node.js와 CouchDB, 그리고 Flatiron.js를 이용하여 간단한 웹 앱을 작성하는 방법을 설명한다.
- 3장 좀비와 모카 설치는 좀비와 모카를 사용한 웹 애플리케이션을 위한 테스트 환경의 기본 구조 생성 방법을 설명한다.
- 4장 모카의 이해는 모카를 이용해 비동기식 테스트 생성과 동작 방법을 설명한다.
- 5장 좀비 브라우저 제어는 좀비를 사용하여 HTML 도큐먼트 로드와 사용자 액션을 처리하는 시뮬레이션 브라우저를 만드는 방법을 설명한다.
- 6장 사용자 상호작용 테스트는 도큐먼트에서 이벤트 발생시키는 방법과 도큐먼트 제어 결과를 테스트하는 방법을 설명한다.
- 7장 디버깅은 좀비 브라우저 객체와 다른 기술을 이용하여 애플리케이션 내부 상태를 분석할 수 있는 방법을 설명한다.
- 8장 AJAX 테스트는 AJAX 요청 방법과 결과 코드가 적용된 웹 페이지의 기능 테스트를 설명한다.
목차
목차
- 1장 Zombie.js로 시작하기
- 소프트웨어와 사용자 인터페이스 테스트의 역사
- 테스트 자동화 시대의 시작
- 유닛 테스트 vs. 통합 테스트
- Zombie.js의 정의
- 서버_측 DOM에 대한 이해
- Zombie.js는 헤드리스(Headless) 브라우저
- 요약
- 2장 웹 앱 작성
- 웹 앱 요구사항 정의
- Node.js와 Flatiron 설치
- Node.js 설치
- Flatiron설치와 애플리케이션 작성
- 할 일 앱 작성
- 데이터베이스 설치
- Node를 통한 CouchDB 접근
- 애플리케이션 레이아웃
- 프론트엔드 개발
- 사용자 등록
- 로그인과 세션 관리
- 할 일 리스트
- 파일 요약
- 요약
- 3장 좀비와 모카 설치
- 애플리케이션 매니페스트 변경
- 테스트 환경 설정
- 요약
- 4장 모카의 이해
- 웹 애플리케이션 테스트 체계화
- 후크(Hook) 이전과 이후의 사용
- 비동기 후크 사용
- 후크가 테스트 그룹과 상호 작용하는 방법
- assertion 모듈 사용
- assertion 메시지 변경
- 비동기 테스트 실행
- 요약
- 5장 좀비 브라우저 제어
- 브라우저 구동은 언제 준비되는가?
- URL로 웹 페이지 방문할 때의 옵션
- 엘리먼트 존재 유무 검사
- 폼(form) 데이터 작성
- 로그인 폼 페이지 테스트
- 할 일 리스트 테스트
- 할 일 리스트 페이지 테스트
- 할 일 아이템 생성 테스트
- 할 일 아이템 제거 테스트
- 테스트 절차 종합하기
- 요약
- 6장 사용자 상호작용 테스트
- 라디오 버튼 제어
- 사용자 상호작용 기능 테스트
- 값 선택
- 요약
- 7장 디버깅
- 명시 테스트(specific test) 실행
- 독립적 테스트 디버깅 출력기능 활성화
- 브라우저의 자바스크립트 콘솔 창 활용
- 브라우저 상태 값 일괄 출력
- 전체 도큐먼트 로그 일괄 출력
- 요약
- 8장 AJAX 테스트
- 드래그 앤 드롭(drag-and-drop) 기능 구현
- 요약