로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

JavaScript Testing

 [버그 없는 웹을 위한 자바스크립트 코드 테스트와 디버깅]
   
지은이 리앙 유시안 유진   |   출판사 에이콘  |   발행일 2014년 03월 31일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 25,000원22,500원 10%
마일리지 5% 1,250원
발행일 2014-03-31
ISBN 8960775398 |  9788960775398
기타정보 번역서 | 312쪽 | 일반
예상출고일 1~2일 이내 (근무일기준)
배송비 무료배송
   
프로그래밍언어
종합지수 0p
   
 

이 책에는 실전에서 유용하게 활용할 수 있는 70여 가지 이상의 자바스크립트 테스팅 예제가 실려 있다. 이 책에 실린 예제들을 따라 하다보면, 버그 없고 견고한 웹을 구성하기 위한 자바스크립트 코드를 테스트하는 데 필요한 이론적 배경 지식은 물론, 테스트와 디버깅을 수행하는 데 필요한 도구 사용법, 자바스크립트 코드 최적화 방법 등을 익힐 수 있다. 그리고 자바스크립트를 처음 공부하는 초보자도 쉽게 따라 할 수 있도록 웹을 구성하는 세 가지 요소인 HTML과 CSS, 자바스크립트의 문법도 함께 설명한다.

★ 이 책에서 다루는 내용 ★
■ HTML과 CSS, 자바스크립트 사이의 관계
■ 자바스크립트 오류의 여러 가지 종류
■ 자바스크립트 임시 테스트 수행
■ 자바스크립트 코드 검증
■ 테스트에 관련된 여러 가지 개념
■ 테스트 계획 수립과 실행
■ 자바스크립트 예외 처리를 활용해 더 복잡한 코드를 테스트하는 방법
■ 자바스크립트를 활용한 사용자 인터페이스 테스트 수행
■ 구글 크롬과 자바스크립트 디버거, 파이어폭스의 벵크맨(Venkman) 확장기능 등의 도구를 이용한 코드 디버깅
■ Sahi와 QUnit, JsLitmus를 사용한 테스트 과정 자동화

★ 이 책의 대상 독자 ★
초보 자바스크립트 개발자나 자바스크립트를 HTML, CSS와 함께 사용해본 경험이 있는 초보 개발자

★ 이 책의 구성 ★
1장. 자바스크립트 테스팅에서는 HTML, CSS 등의 웹 개발 구성 요소들을 살펴보고, 그 안에서 자바스크립트의 역할과 가장 자주 접하게 될 에러의 종류를 살펴본다.

2장. 자바스크립트에서의 임시 테스팅과 디버깅에서는 간단한 임시 테스트 용도의 자바스크립트 프로그램을 작성하면서 자바스크립트 프로그램에 임시 테스트를 하는 이유와 가장 많이 사용되는 자바스크립트의 기능을 알아본다.

3장. 문법 검증에서는 검증된 자바스크립트 코드를 작성하는 방법을 설명한다. 3장을 마치고 나면, 자바스크립트 개발자로서 기술을 향상시킬 뿐만 아니라 자바스크립트 코드를 테스트하는 데 있어서 검증의 역할은 무엇인지 좀 더 깊이 이해할 수 있다.

4장. 테스트 계획하기에서는 테스트 계획 수립의 중요성과 테스트 수행에 사용되는 전략과 개념을 살펴보고, 간단한 테스트 계획을 수립하면서 테스트 계획을 세운다는 것이 어떤 의미인지 체험해본다.

5장. 테스트 계획 실행하기에서는 수립된 테스트 계획을 실행에 옮겨본다. 4장에서 배운 이론을 적용하여 버그를 찾고 수정하는 과정을 실습을 통해 익힌다.

6장. 더 복잡한 코드 테스트하기에서는 코드를 테스트하는 정교한 방법을 살펴본다. 코드를 테스트하는 데 자바스크립트 내장 에러 객체를 사용하는 방법과 콘솔의 로그를 사용하는 방법, 임의의 메시지를 작성하는 방법, 에러를 잡는 방법을 살펴본다.

7장. 디버깅 도구에서는 작성한 코드가 수동으로 테스트하기에 너무 크고 복잡할 경우 사용할 수 있는 방법을 알아본다. 인터넷 익스플로러 8과 파이어폭스 3.6, 크롬 5.0, 사파리 4.0, 오페라 10을 비롯한 시중에서 인기 있는 웹 브라우저가 제공하는 디버깅 도구의 도움을 받아 본다.

8장. 테스팅 도구에서는 서로 다른 브라우저 및 플랫폼 간 호환이 가능한 무료 테스팅 도구를 사용하여 테스트를 자동화하는 방법을 살펴본다. 사용자 인터페이스에 대한 테스트와 테스트 자동화 및 경고(assertion)를 이용하는 방법과 벤치마킹(benchmarking) 테스트에 대해서도 알아본다.

1장 자바스크립트 테스팅
자바스크립트는 웹 페이지의 어느 부분에 적합한가?
___HTML의 내용
실습 예제 - HTML 문서 작성
______속성을 이용하여 HTML 엘리먼트에 스타일 적용하기
______HTML 엘리먼트에 id와 class 이름 지정하기
___CSS
실습 예제 | CSS로 HTML 문서에 스타일 적용하기
______ID와 클래스 이름을 이용해 HTML 엘리먼트를 참조하고 스타일 적용하기
______클래스 선택자와 ID 선택자의 차이점
______클래스 선택자와 ID 선택자의 다른 용도
______모든 CSS 속성의 목록
___자바스크립트로 웹 페이지에 동적인 요소 가미하기
실습 예제 | HTML 문서에 동작 부여하기
______자바스크립트 문법
______자바스크립트 이벤트
______문서에서 엘리먼트 찾기
______정리
자바스크립트와 서버 측 언어의 차이점
웹 페이지가 자바스크립트 없이도 동작해야 하는 이유
테스팅이란 무엇인가
왜 테스트를 해야 하는가
오류의 종류
___불러오기 오류
실습 예제 | 불러오기 오류 체험하기
______부분적으로 올바른 자바스크립트
실습 예제 | 불러오기 오류 체험하기
______실행시간 오류
실습 예제 | 실행시간 오류 체험하기
______논리 오류
실습 예제 | 논리 오류 체험하기
오류 없는 자바스크립트 코드 작성을 위한 조언
___객체와 변수, 함수의 이름이 올바른지 확인하라
___문법이 올바른지 확인하라
___코드를 작성하기 전에 계획을 세워라
___코드의 정확성을 확인하라
___적절한 텍스트 편집기를 선택해 오류를 방지하라
요약

2장 자바스크립트에서의 임시 테스팅과 디버깅
임시 테스팅의 목적: 스크립트가 제대로 실행되게 만들자!
웹 브라우저에서 자바스크립트 오류가 발생하면 어떤 일이 일어나는가?
웹 브라우저 간의 차이점과 웹 브라우저 호환성 테스팅의 필요성
실습 예제 | 웹 브라우저의 기능을 비롯한 정보 가로채기
___기능 테스트를 이용해 웹 브라우저 간의 차이점 테스트하기
실습 예제 | 서로 다른 웹 브라우저 간의 기능 테스트
적합한 곳에서 출력을 얻고 값을 설정하고 있는가
___폼 값에 접근하기
실습 예제 | 폼 값에 접근하기
______폼의 값에 접근하는 그밖의 기법
___웹 페이지의 다른 부분에 접근하기
실습 예제 | 알맞은 곳에서 올바른 값 가져오기
스크립트가 기대한 결과를 내는가?
스크립트가 동작하지 않을 때 취할 수 있는 조치
___코드를 시각적으로 검사하기
___alert()을 이용해 코드의 동작 확인하기
___alert()을 이용해 어떤 값이 사용되는지 확인하기
실습 예제 | alert()을 이용하여 코드 검사하기
___덜 요란한 방법으로 어떤 코드에서 어떤 값을 사용하는지 알아내기
실습 예제 | 사용 중인 변수 값을 ‘조용히’ 확인하기
스크립트의 일부를 주석 처리해 테스팅 단순화하기
실습 예제 | 검사 과정 단순화하기
시간 차이 문제 : HTML과 상호작용 하기 전에 HTML을 불러왔는지 확인하자
임시 테스팅만으로 충분하지 않은 이유
요약

3장 문법 검증
검증과 테스팅의 차이점
___유효하지만 잘못 된 코드 | 검증으로 찾을 수 없는 오류
___유효하지 않지만 원하는 대로 동작하는 코드
___유효하지 않고 제대로 동작하지도 않는 코드 | 검증이 아니면 찾아내기 힘든 오류
코드의 품질
___자바스크립트를 작성하기 전에 HTML과 CSS를 먼저 검증하자
______코드를 검증하지 않으면 어떤 일이 생길까?
___컬러 코딩 편집기로 검증 오류 찾기
검증으로 찾을 수 있는 일반적인 오류
온라인 검증기 JS린트
실습 예제 | JS린트를 이용해서 검증 오류 찾아내기
유효한 코드에서 발생하는 검증 경고
___유효한 코드의 검증 경고를 수정해야 할까?
___검증 경고를 수정하지 않으면 어떻게 될까?
검증 오류 고치기
___use strict 구문 누락 오류
실습 예제 | ‘use strict’ 오류 고치기
___++의 잘못된 사용
실습 예제 | ++의 잘못된 사용 오류 고치기
___정의하지 않은 함수 오류
실습 예제 | 정의하지 않은 함수 오류 고치기
___너무 많은 var 구문 사용
실습 예제 | 너무 많은 var 구문 사용 고치기
___<\/를 사용해야 할 곳에 실습 예제 | ___===를 사용해야 할 곳에 == 사용하기
실습 예제 | ==를 ===로 대체하기
___정의하지 않은 alert
실습 예제 | 정의하지 않은 alert 오류 고치기
___HTML 이벤트 핸들러 사용 지양하기
실습 예제 | HTML 이벤트 핸들러 사용 지양하기
___수정 사항 요약
자바스크립트 린트 다운로드하기
요약

4장 테스트 계획하기
소프트웨어 생명주기 훑어보기
___애자일 방법론
______실전에서의 애자일 방법론과 소프트웨어 생명주기
______분석과 설계
______구현과 테스팅
______배치
______유지보수
테스트를 하려면 반드시 테스트 계획을 세워야 할까
테스트 계획은 언제 수립할까
얼마나 많은 테스트가 필요할까
___코드가 의도하는 바가 무엇인가
___코드가 요구사항을 만족하는지 테스트하기
___사용자의 잘못된 행동 테스트하기
정리
주요 테스팅 관련 개념과 전략
___기능적 요구사항 테스트
___비기능적 요구사항 테스트
___수용 테스트
___블랙 박스 테스트
______사용성 테스트
______경계 값 테스트
______등가 분할
______베타 테스트
___화이트 박스 테스트
______분기 테스트
______파레토 테스트
___단위 테스트
___웹 페이지 테스트
___성능 테스트
___통합 테스트
___회귀 테스트: 코드 변경 후에 테스트 적용하기
테스트 순서
테스트 계획 문서화하기
___테스트 계획
______버전 부여하기
______테스트 전략
______버그 보고 양식
___예제 테스트 계획 정리
요약

5장 테스트 계획 실행하기
순서대로 테스트 계획 적용하기
___테스트 케이스 1: 유효하고 적절한 값으로 테스트하기
실습 예제 | 테스트 케이스 1a : 화이트 박스 테스트를 바탕으로 유효하고 적절한 값 테스트하기
___테스트 케이스 1b: 블랙박스 테스트를 바탕으로 유효하지만 적절하지 않은 값 테스트하기
실습 예제 | 테스트 케이스 1bi : 경계 값 테스트를 바탕으로 유효하지만 ___적절하지 않은 값 테스트하기
실습 예제 | 테스트 케이스 1bii : 예측된 유효하지 않은 값 테스트
______테스트 케이스 2 : 프로그램 논리 테스트하기
실습 예제 | 프로그램 논리 테스트
___테스트 케이스 3 : 통합 테스트와 유효하지 않은 값 테스트
실습 예제 | 테스트 케이스 3 : 기대했던 값으로 프로그램 전체 테스트하기
실습 예제 | 테스트 케이스 3b | 두 번째 폼의 견고성 테스트
___기대하지 않은 테스트 결과가 나올 때 어떻게 해야 할까
회귀 테스트 수행하기
실습 예제 | 버그 수정과 회귀 테스트 수행
___성능 문제 | 코드를 압축하여 불러오기 속도 높이기
___Ajax의 사용이 테스트에 미치는 영향
___서버 측 테스트의 차이점
___웹 사이트 방문자가 자바스크립트를 비활성화 했을 때 벌어지는 일
요약

6장 더 복잡한 코드 테스트하기
여러 개의 자바스크립트 파일을 사용할 때 발생하는 문제
___이벤트 핸들러 결합하기
___이름 충돌
자바스크립트 라이브러리 사용하기
___다른 사람이 만든 라이브러리도 테스트해야 할까?
___라이브러리 코드에 수행하는 테스트의 종류
______성능 테스트
______프로파일링 테스트
___라이브러리의 GUI와 위젯 부가 기능 테스트
고의적으로 자바스크립트 오류 던지기
___throw 구문
___try catch, finally 구문
내장 객체로 오류 잡아내기
___오류 객체
___RangeError 객체
___ReferenceError 객체
___TypeError 객체
___SyntaxError 객체
___URIError 객체
___EvalError 객체
오류 콘솔 로그 활용하기
___오류 메시지
___임의의 메시지 작성하기
스크립트 수정하고 테스트하기
실습 예제 | 코딩, 수정, 그리고 오류 던지고 잡기
요약

7장 디버깅 도구
IE8 개발자 도구(그리고 IE6과 IE7의 개발자 툴바 플러그인)
IE 개발자 도구 사용하기
___열기
___사용자 인터페이스 훑어보기
___IE 디버깅 도구를 활용한 디버깅 기초
실습 예제 | IE8 개발자 도구를 활용한 HTML 디버깅
실습 예제 | IE8 개발자 도구를 활용한 CSS 디버깅
___자바스크립트 디버깅하기
실습 예제 | IE8 개발자 도구를 활용한 자바스크립트 디버깅
사파리나 구글 크롬의 웹 검사기와 자바스크립트 디버거
사파리와 구글 크롬의 차이점
___크롬을 이용한 디버깅
___사용자 인터페이스 훑어보기
실습 예제 | 구글 크롬을 이용한 디버깅
오페라 자바스크립트 디버거 [드래곤플라이]
___드래곤플라이 사용하기
______드래곤플라이 시작하기
실습 예제 | 오페라 드래곤플라이를 활용한 디버깅
___Inspection과 Call Stack
___Continue, Step Into, Step Over, Step Out과 오류 시 정지하기
___드래곤플라이 설정
파이어폭스와 뱅크맨 확장 기능
___파이어폭스의 뱅크맨 확장기능 사용하기
______뱅크맨 자바스크립트 디버거 확장기능 설치하기
______뱅크맨 실행
______사용자 인터페이스 훑어보기
실습 예제 | 파이어폭스의 뱅크맨 확장기능을 이용한 디버깅
___Breakpoints와 Call Stack
___Local Variables와 Watches
실습 예제 | 뱅크맨을 활용한 고급 디버깅
파이어폭스와 파이어버그 확장 기능
요약

8장 테스팅 도구
Sahi
실습 예제 | Sahi를 사용한 사용자 인터페이스 테스팅
___Sahi로 더 복잡한 테스팅 수행하기
QUnit
실습 예제 | QUnit로 자바스크립트 테스팅하기
___실제 상황에서 QUnit 적용하기
___다양한 상황에서의 고급 경고 테스트
JSLitmus
실습 예제 | 임시 자바스크립트 벤치마크 테스트 만들기
___JSLitmus로 더 복잡한 테스팅하기
좀 더 살펴봐야 할 테스팅 도구
요약
[ 저자 ]
리앙 유시안 유진
파이썬/장고(Python/Django)나 자바스크립트/제이쿼리(JavaScript/JQuery)를 이용해 만들어진 웹 애플리케이션을 바탕으로 다양한 문제를 창의적으로 해결하는 것을 즐긴다. 추천 알고리즘과 링크 분석, 데이터 시각화, 데이터 마이닝, 비스니스 인텔리전스(business intelligence), 지능형 사용자 인터페이스에 관련된 연구도 진행하고 있으며, 현재 대만 타이페이에 위치한 국립 정치 대학교(NCCU, National Cheng Chi University)에서 경영과 컴퓨터과학 두 가지 학위를 이수 중이다. 최근에는 개인 블로그(http://www.liangeugene.com)를 개설했다.

[ 역자 ]
최광민
한양대학교 컴퓨터 전공을 마치고, 현재 삼성SDS CSP 연구소에 재직 중이다. 주요 연구 분야는 클라우드 컴퓨팅이지만, 흥미로운 기술이라면 무엇이든 배우고 즐길 준비가 돼있다.
등록된 서평이 없습니다.
클릭하세요 HTML 입문+웹디자인...
성윤정
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(0)
회원평점   회원서평수 0
에이콘 출판사의 신간
AWS 침투 테스트
칼 길버트/이진호 저
36,000원
(10%↓+5%)
 
적대적 머신러닝
앤서니 조셉 외 지음/김우석 저
36,000원
(10%↓+5%)
 
The Python 3 Standard Library by Example: 예제로 배우는 파이썬 표준 라이브러리
더그 헬먼/권석기 저
52,200원
(10%↓+5%)
 
AWS 공인 솔루션스 아키텍트 스터디 가이드(2판)
데이비드 클린턴/홍순태 저
27,000원
(10%↓+5%)
 
실전 사이버 인텔리전스
윌슨 바우티스타 주니어 지음/박정우 저
27,000원
(10%↓+5%)
 
이메일주소수집거부