The Art of Software Testing (Second Edition) 한국어판 [소프트웨어 테스팅의 정석]
- 원서명The Art of Software Testing, Second Edition (ISBN 9780471469124)
- 지은이글렌포드 마이어스, 톰 뱃지트, 토드 토마스, 코리 샌들러
- 옮긴이이공선, 권원일
- ISBN : 9788960773028
- 30,000원
- 2012년 05월 24일 펴냄 (절판)
- 페이퍼백 | 292쪽 | 152*224mm
- 시리즈 : 소프트웨어 테스팅
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
글렌포드 J. 마이어스가 쓴 이 책은 소프트웨어 테스팅 분야에서 한 획을 그은 진정한 명서이며 고전이다. 테스팅에 대한 일반적인 내용을 개발과 연계해 최근 출간된 그 어떤 책보다 오히려 더 체계적이고 설득력 있게 소개한다. 또한 인터넷 애플리케이션 테스팅, 익스트림 테스팅 등 테스팅의 최신 내용도 같은 맥락에서 다뤄 30여 년 전에 저자가 정립한 테스팅 이론의 탁월성과 적용성을 입증하고 있다. 이 책은 소프트웨어 테스트 엔지니어만을 위한 것은 아니다. IT 전문가라면 누구나 한 번은 읽어야 할, 글자 그대로 소프트웨어 테스팅의 정석을 알려주는 책이다.
[ 소개 ]
성공적이고 효율적인 테스팅에 사용되는 실무 기법
1979년 첫 출간된 글렌포드 마이어스의 『The Art of Software Testing』은 지난 25년간 출판사 판매 도서 목록에서 빠지지 않았던 고전이었다. 그만큼 이 책은 기본에 충실하고, 실전에 도움이 되는 가치 있는 책이라는 뜻이다.
이 책의 개정판 저자들은 지금까지 컴퓨터 소프트웨어를 주제로 120권 이상의 책을 집필했다. 그 중에는 높은 판매고를 올리는 책도 있으며, 여러 버전으로 나오기도 했다(코리 샌들러의 『내 PC 고치기(Fix Your Own PC)』는 7판까지 나왔으며, 톰 뱃지트의 마이크로소프트 파워포인트와 오피스에 대한 책은 4판 이상 출판됐다). 하지만 이 책들도 몇 년 이상 판매되는 스테디셀러는 되지 못했다.
차이는 무엇일까? 최근 발간되는 책은 운영체제, 애플리케이션 소프트웨어, 보안, 통신 기술, 하드웨어 구성 등 단편적인 주제를 다룬다. 1980년 이후, 컴퓨터 하드웨어와 소프트웨어 기술의 빠른 변화로 말미암아 주제는 수시로 바뀌어왔다.
같은 시기에 소프트웨어 테스팅에 대한 책은 수십 권 아니 수백 권은 출간됐을 것이다. 이 책들은 소프트웨어 테스팅 주제에 대해서 각각 변화한 접근 방법을 중심으로 기술한다.
반면 마이어스의 『The Art of Software Testing』은 가장 중요한 컴퓨터 주제 중 하나인, 개발 소프트웨어가 본래 목적에 맞는 기능을 수행하는지, 잘못된 기능을 하지 않는지 확인 과정에 대한 확고한 지침을 제공해왔다.
이 책은 이와 같은 기본적인 개념을 다룬다. 최근의 프로그래밍 언어를 포함한 예제를 추가했고, 마이어스가 1판을 작성할 때는 없었던 웹 프로그래밍, 전자상거래, 익스트림 프로그래밍과 익스트림 테스팅 같은 주제를 추가했다.
하지만 새로운 고전에는 원작이 있듯이, 이 책도 현재와 미래의 하드웨어와 소프트웨어 플랫폼에 적용할 원리와 프로세스, 즉 글렌포드 마이어스의 소프트웨어 테스팅 원리를 기술한다. 이 책도 부디 원작에 버금갈 정도로 소프트웨어 설계자와 개발자에게 오랫동안 소중한 정보를 제공하는 스테디셀러가 되길 바란다.
[ 이 책에서 다루는 내용 ]
• 테스팅의 기본 원리와 전략
• 프로그램 인스펙션과 워크스루
• 코드 인스펙션
• 오류 체크리스트
• 동료 평가
• 블랙박스와 화이트박스 테스팅
• 오류 추정
• 하향식 테스팅 대 상향식 테스팅
• 고수준 테스팅
• 기능 테스팅과 시스템 테스팅
• 인수 테스팅
• 설치 테스팅
• 모듈(단위) 테스팅
• 테스트 계획과 제어
• 독립 테스팅 에이전시
• 디버깅 원리
• 오류 분석
• 익스트림 테스팅
• 인터넷 애플리케이션 테스팅
• e커머스 아키텍처의 고수준 테스팅
[ 이 책의 구성 ]
1장은 다른 내용을 읽기 전에 모든 독자가 읽어야 할 자체평가 테스트다.
2장에서는 프로그램 테스팅이 철학적이면서 경제적인 문제의 집합이라는 사실을 이해하는 데 가장 중요한 실제 정보를 다룬다.
3장에서는 컴퓨터에 기반하지 않은 워크스루(Walkthroughs)나 인스펙션 개념을 다룬다. 절차나 관리적인 측면이 아닌 토론에 초점이 맞춰져 있다. 3장에서는 에러를 찾는 방법에 대한 기술적 관점을 설명한다.
4장의 주제는 테스팅에 익숙한 독자라면 이미 잘 아는, 프로그램 테스터의 기술 중 테스트 케이스를 효과적으로 기술하는 지식의 중요성을 좀 더 자세하게 소개한다.
5장과 6장은 개별 모듈이나 서브루틴의 테스팅과 객체 테스팅을 다룬다.
7장에서는 프로그램 디버깅에 대한 실질적인 제안을 제시하며, 8장에서는 익스트림 프로그래밍과 익스트림 테스팅을 다룬다.
마지막으로 9장에서는 기존 책에 기술되지 않았던 전자상거래 시스템을 포함한 웹 프로그램의 테스팅 방법을 소개한다.
[ 이 책의 대상 독자 ]
이 책의 대상 독자는 세 그룹으로 나뉜다. 우선 이 책에 기술된 내용이 전문 프로그래머에겐 최신 정보가 아닐지라도 테스팅 기법의 지식을 얻는 데 도움이 되리라 생각한다. 따라서 독자가 프로그램에서 버그를 찾는 데 이 책의 도움을 받았다면, 그것만으로도 이 책은 제 몫을 다한 것이다. 두 번째 독자는 프로젝트 관리자다. 이 책이 전하는 테스팅 프로세스 관리에 대한 새롭고 실무적인 정보가 필요하리라 생각해서다. 세 번째 독자는 전산학과 학생이다. 앞서 말했듯, 이 책의 목적은 학생들에게 프로그램 테스팅의 문제를 알리고 효과적인 기법을 제안하는 데 있다. 따라서 학생들의 프로그래밍 수업 과정에 이 책이 보조 교재로 사용되길 희망한다. 학생들이 조기에 소프트웨어 테스팅을 접할 수 있기를 바라는 마음에서다.
[ 소개 ]
성공적이고 효율적인 테스팅에 사용되는 실무 기법
1979년 첫 출간된 글렌포드 마이어스의 『The Art of Software Testing』은 지난 25년간 출판사 판매 도서 목록에서 빠지지 않았던 고전이었다. 그만큼 이 책은 기본에 충실하고, 실전에 도움이 되는 가치 있는 책이라는 뜻이다.
이 책의 개정판 저자들은 지금까지 컴퓨터 소프트웨어를 주제로 120권 이상의 책을 집필했다. 그 중에는 높은 판매고를 올리는 책도 있으며, 여러 버전으로 나오기도 했다(코리 샌들러의 『내 PC 고치기(Fix Your Own PC)』는 7판까지 나왔으며, 톰 뱃지트의 마이크로소프트 파워포인트와 오피스에 대한 책은 4판 이상 출판됐다). 하지만 이 책들도 몇 년 이상 판매되는 스테디셀러는 되지 못했다.
차이는 무엇일까? 최근 발간되는 책은 운영체제, 애플리케이션 소프트웨어, 보안, 통신 기술, 하드웨어 구성 등 단편적인 주제를 다룬다. 1980년 이후, 컴퓨터 하드웨어와 소프트웨어 기술의 빠른 변화로 말미암아 주제는 수시로 바뀌어왔다.
같은 시기에 소프트웨어 테스팅에 대한 책은 수십 권 아니 수백 권은 출간됐을 것이다. 이 책들은 소프트웨어 테스팅 주제에 대해서 각각 변화한 접근 방법을 중심으로 기술한다.
반면 마이어스의 『The Art of Software Testing』은 가장 중요한 컴퓨터 주제 중 하나인, 개발 소프트웨어가 본래 목적에 맞는 기능을 수행하는지, 잘못된 기능을 하지 않는지 확인 과정에 대한 확고한 지침을 제공해왔다.
이 책은 이와 같은 기본적인 개념을 다룬다. 최근의 프로그래밍 언어를 포함한 예제를 추가했고, 마이어스가 1판을 작성할 때는 없었던 웹 프로그래밍, 전자상거래, 익스트림 프로그래밍과 익스트림 테스팅 같은 주제를 추가했다.
하지만 새로운 고전에는 원작이 있듯이, 이 책도 현재와 미래의 하드웨어와 소프트웨어 플랫폼에 적용할 원리와 프로세스, 즉 글렌포드 마이어스의 소프트웨어 테스팅 원리를 기술한다. 이 책도 부디 원작에 버금갈 정도로 소프트웨어 설계자와 개발자에게 오랫동안 소중한 정보를 제공하는 스테디셀러가 되길 바란다.
[ 이 책에서 다루는 내용 ]
• 테스팅의 기본 원리와 전략
• 프로그램 인스펙션과 워크스루
• 코드 인스펙션
• 오류 체크리스트
• 동료 평가
• 블랙박스와 화이트박스 테스팅
• 오류 추정
• 하향식 테스팅 대 상향식 테스팅
• 고수준 테스팅
• 기능 테스팅과 시스템 테스팅
• 인수 테스팅
• 설치 테스팅
• 모듈(단위) 테스팅
• 테스트 계획과 제어
• 독립 테스팅 에이전시
• 디버깅 원리
• 오류 분석
• 익스트림 테스팅
• 인터넷 애플리케이션 테스팅
• e커머스 아키텍처의 고수준 테스팅
[ 이 책의 구성 ]
1장은 다른 내용을 읽기 전에 모든 독자가 읽어야 할 자체평가 테스트다.
2장에서는 프로그램 테스팅이 철학적이면서 경제적인 문제의 집합이라는 사실을 이해하는 데 가장 중요한 실제 정보를 다룬다.
3장에서는 컴퓨터에 기반하지 않은 워크스루(Walkthroughs)나 인스펙션 개념을 다룬다. 절차나 관리적인 측면이 아닌 토론에 초점이 맞춰져 있다. 3장에서는 에러를 찾는 방법에 대한 기술적 관점을 설명한다.
4장의 주제는 테스팅에 익숙한 독자라면 이미 잘 아는, 프로그램 테스터의 기술 중 테스트 케이스를 효과적으로 기술하는 지식의 중요성을 좀 더 자세하게 소개한다.
5장과 6장은 개별 모듈이나 서브루틴의 테스팅과 객체 테스팅을 다룬다.
7장에서는 프로그램 디버깅에 대한 실질적인 제안을 제시하며, 8장에서는 익스트림 프로그래밍과 익스트림 테스팅을 다룬다.
마지막으로 9장에서는 기존 책에 기술되지 않았던 전자상거래 시스템을 포함한 웹 프로그램의 테스팅 방법을 소개한다.
[ 이 책의 대상 독자 ]
이 책의 대상 독자는 세 그룹으로 나뉜다. 우선 이 책에 기술된 내용이 전문 프로그래머에겐 최신 정보가 아닐지라도 테스팅 기법의 지식을 얻는 데 도움이 되리라 생각한다. 따라서 독자가 프로그램에서 버그를 찾는 데 이 책의 도움을 받았다면, 그것만으로도 이 책은 제 몫을 다한 것이다. 두 번째 독자는 프로젝트 관리자다. 이 책이 전하는 테스팅 프로세스 관리에 대한 새롭고 실무적인 정보가 필요하리라 생각해서다. 세 번째 독자는 전산학과 학생이다. 앞서 말했듯, 이 책의 목적은 학생들에게 프로그램 테스팅의 문제를 알리고 효과적인 기법을 제안하는 데 있다. 따라서 학생들의 프로그래밍 수업 과정에 이 책이 보조 교재로 사용되길 희망한다. 학생들이 조기에 소프트웨어 테스팅을 접할 수 있기를 바라는 마음에서다.
목차
목차
- 1장 자체평가 테스트
- 2장 프로그램 테스팅의 심리학과 경제학
- 테스팅의 심리학
- 테스팅의 경제학
- 블랙박스 테스팅
- 화이트박스 테스팅
- 소프트웨어 테스팅 원칙
- 요약
- 3장 프로그램 인스펙션과 워크스루, 리뷰
- 인스펙션과 워크스루
- 코드 인스펙션
- 인스펙션용 에러 체크리스트
- 데이터 참조 에러
- 데이터 선언 에러
- 연산 에러
- 비교 에러
- 제어흐름 에러
- 인터페이스 에러
- 입출력 에러
- 기타 체크
- 워크스루
- 데스크 체킹
- 동료 평가
- 요약
- 4장 테스트 케이스 설계
- 화이트박스 테스팅
- 논리 커버리지 테스팅
- 동등분할
- 예제
- 경계 값 분석
- 원인-결과 그래핑
- 에러 추측
- 전략
- 화이트박스 테스팅
- 5장 모듈 테스팅
- 테스트 케이스 설계
- 점진적 테스트
- 하향식 테스팅 대 상향식 테스팅
- 하향식 테스팅
- 상향식 테스팅
- 비교
- 테스트 수행
- 6장 고수준 테스팅
- 기능 테스팅
- 시스템 테스팅
- 편의 테스팅
- 볼륨 테스팅
- 스트레스 테스팅
- 사용성 테스팅
- 보안성 테스팅
- 성능 테스팅
- 스토리지 테스팅
- 구성 테스팅
- 호환성∙변환 테스팅
- 설치 테스팅
- 신뢰성 테스팅
- 회복 테스팅
- 유용성 테스팅
- 문서 테스팅
- 절차 테스팅
- 시스템 테스팅 수행
- 인수 테스팅
- 설치 테스팅
- 테스트 계획 및 제어
- 테스트 완료 기준
- 독립적 테스트 기관
- 7장 디버깅
- 무차별 디버깅
- 귀납적 디버깅
- 연역적 디버깅
- 역추적에 의한 디버깅
- 테스팅에 의한 디버깅
- 디버깅 원리
- 에러 발생 위치 파악의 원리
- 에러 수정 기법
- 에러 분석
- 8장 익스트림 테스팅
- 익스트림 프로그래밍 기초
- 익스트림 테스팅의 개념
- 익스트림 단위 테스팅
- 인수 테스팅
- 익스트림 테스팅 활용
- 테스트 케이스 설계
- 테스트 드라이버와 테스트 애플리케이션
- 요약
- 9장 인터넷 애플리케이션 테스팅
- 기본적인 e커머스 아키텍처
- 테스팅 관련 어려운 과제
- 테스팅 전략
- 프리젠테이션 레이어 테스팅
- 비즈니스 레이어 테스팅
- 데이터 레이어 테스팅
- 부록 A 익스트림 테스팅 애플리케이션 예제