고품질 앱을 위한 모바일 테스팅 [모바일 테스트 전략부터 수행까지]
- 원서명Hands-On Mobile App Testing: A Guide for Mobile Testers and Anyone Involved in the Mobile App Business (ISBN 9780134191713)
- 지은이다니엘 노트(Daniel Knott)
- 옮긴이최근호, 정미연
- ISBN : 9788960778344
- 25,000원
- 2016년 02월 26일 펴냄
- 페이퍼백 | 260쪽 | 188*235mm
- 시리즈 : 모바일 프로그래밍, 소프트웨어 테스팅
책 소개
요약
저자의 실제 경험을 바탕으로 모바일 테스트 계획부터 수행까지 전체 프로세스를 폭넓게 다룬다. 이 책의 핵심은 모바일에 특화된 테스트 방법과 자동화 도구의 설명 및 선택 방법이다. 책에서 소개하는 최신 자동화 도구로 모바일 앱 테스트의 부담을 어느 정도 덜 수 있다. 모바일 테스트를 처음 시작했거나 테스팅 업무로 업종을 전환한 사람 모두 이 책을 통해 체계적인 기본 지식을 얻을 수 있다.
이 책에서 다루는 내용
■ 최선의 모바일 테스트 전략과 런칭 전략
■ 고객, 데이터 네트워크, 모바일 기기, 비즈니스 모델을 반영한 테스트 시나리오
■ 최적의 안드로이드, iOS 테스트 도구 찾기
■ 광범위한 커버리지를 가지는 테스트 자동화
■ 기능 테스트와 비기능 테스트 접근법
■ 급격하게 변하는 모바일 릴리스 사이클
■ 에뮬레이터, 시뮬레이터, 실제 기기
■ 네이티브 앱, 하이브리드 앱, 웹앱
■ 크라우드와 클라우드 테스트의 장단점
■ 데이터베이스 접근과 로컬 저장소
■ 모바일 앱 라이프 사이클에서의 테스트 가치
■ 웨어러블, 스마트홈, 스마트카, 사물인터넷
이 책의 대상 독자
이 책은 초보자부터 이미 모바일 개발에 참여하고 있는 테스트 전문가까지, 모바일 앱과 모바일 테스트에 관심 있는 사람이면 누구나 읽을 수 있다. 모바일 테스트 팀이나 모바일 테스트 전략을 고심하는 테스트 관리자에게도 최고의 선택이 될 것이고, 모바일을 처음 접하거나 모바일로 업종을 바꾸고자 하는 소프트웨어 테스터에게도 두말할 나위 없이 유용하다. 모바일 테스트 지식을 배우고 싶은 개발자나 자신이 개발한 모바일 앱을 충실히 테스트하고 싶은 개발자에게 적절한 선택이 될 것이다. 마지막으로, 이 책은 모바일 테스트라는 도전 과제에 대한 통찰력을 얻고자 하는 프로덕트 매니저가 읽어도 좋다.
이 책의 구성
1장, ‘모바일 테스트만의 특별함’에서는 모바일 테스트가 가지는 특별함에 주목한다. 모바일 사용자의 기대치, 데이터 네트워크, 모바일 기기 등을 살펴보고 모바일 테스트가 소프트웨어 테스트가 되는 이유를 설명한다.
2장, ‘모바일 기기와 모바일 앱’에서는 모바일 데이터 네트워크를 소개하고, 이런 배경지식이 중요한 이유를 설명한다. 통화만 가능한 수준의 덤브폰(dumb phone)과 현재의 스마트폰을 아우르는 모바일 기기의 혁신 과정도 담고 있으며, 다양한 종류의 앱과 비즈니스 모델도 소개한다.
3장, ‘모바일 테스트의 도전 과제들’에서는 모바일 테스트가 마주하는 문제들과 해결책을 다룬다. 모바일 테스트의 도전 과제에는 고객의 요구사항과 기기 파편화, 센서와 인터페이스, 시스템 앱, 모바일 브라우저 이슈 등이 있다. 각 단원에서는 모바일 테스터로서 이러한 문제들을 처리할 수 있는 해결 방안을 제시한다.
4장, ‘모바일 앱 테스트’에서는 모바일 애플리케이션을 테스트하는 방법을 다룬다. 에뮬레이터, 시뮬레이터, 실제 기기 간의 차이점과 함께 모바일 앱에서 테스트해야 하는 부분을 설명한다. 기능적 요소와 비기능적 요소에 관한 테스트 접근법도 다루며, 또한 모바일 테스트 효율을 높일 수 있는 모바일 테스트 마인드맵, 연상 기호법, 체크리스트를 살펴본다.
5장, ‘모바일 테스트 자동화와 관련 도구’에서는 가장 중요한 주제 중 하나인 모바일 테스트 자동화를 다룬다. 테스트 자동화 도구의 종류와 각 도구만의 접근법을 배우고, 각자의 테스트 환경에 맞는 자동화 도구를 선택하는 아이디어를 얻을 수 있다. 추가로, 안드로이드와 iOS 플랫폼에서 사용 가능한 모바일 테스트 자동화 도구의 현주소를 개략적으로 설명한다.
6장, ‘크라우드 테스트와 클라우드 테스트’에서는 크라우드(crowd)와 클라우드(cloud)라는 새로운 모바일 테스트 접근법을 살펴본다. 각각의 장단점을 지닌 이 두 접근법은 모바일 테스트에 좋은 선택이 될 수 있다.
7장, ‘모바일 테스트와 런칭 전략’에서는 런칭할 때 고려할 테스트 이슈를 다룬다. 개발과 테스트를 끝내고 런칭하는 과정까지 고품질의 제품이 될 수 있도록 가이드하는 중요한 부분이다. 모바일 테스트와 런칭 전략을 세우는 방법에 관한 풍부한 아이디어와 예제를 제공한다.
8장, ‘모바일 테스터의 필수 역량’에서는 모바일 테스터가 반드시 갖춰야 할 역량들을 설명한다. 모바일 테스터로서 스킬 세트를 향상하는 방법도 함께 살펴본다.
9장, ‘앞으로 펼쳐질 일들’에서는 소프트웨어 테스터가 머지않은 미래에 수행하게 될 일을 설명한다. 사물인터넷, 스마트홈, 스마트카, 웨어러블이 여기서 다루는 주제들이다. 마지막에는 성공적인 커리어를 위한 다섯 가지 성공 요소를 알려준다.
목차
목차
- 1장. 모바일 테스트만의 특별함
- 사용자가 원하는 것
- 이동성과 데이터 네트워크
- 모바일 기기
- 모바일 기기의 라이프 사이클
- 모바일 테스트 vs. 소프트웨어 테스트
- 요약
- 2장. 모바일 기기와 모바일 앱
- 모바일 네트워크
- 2007년 이후의 모바일 기기
- 안드로이드와 iOS 비교
- 앱의 종류
- 네이티브 앱
- 장점
- 단점
- 하이브리드 앱
- 장점
- 단점
- 웹앱
- 장점
- 단점
- 네이티브 앱
- 모바일 앱의 비즈니스 모델
- 프리미엄 모델
- 유료 모델
- 트랜잭션 모델
- 사업 모델 선택
- 앱스토어
- 요약
- 3장. 모바일 테스트의 도전 과제들
- 모바일 세상의 고객
- 요약
- 모바일 플랫폼과 파편화
- 모바일 기기 분류
- 모바일 디바이스 랩
- 각종 센서와 인터페이스
- 주변광 센서
- 근접 센서
- 가속도 센서
- 중력 센서
- 자기 센서
- 압력 센서, 온도 센서, 습도 센서
- 위치 센서
- 비접촉식 센서
- 요약
- 터치스크린
- 마이크로폰
- 카메라
- 시스템 앱
- 국제화와 현지화
- 모바일 브라우저
- 요약
- 모바일 세상의 고객
- 4장. 모바일 앱 테스트
- 에뮬레이터? 시뮬레이터? 아니면 실제 기기?
- 수동 테스트 vs. 자동화 테스트
- 전통적인 방식의 테스트
- 모바일에 특화된 테스트
- 모바일 기능성 테스트
- 모바일 사용성 테스트
- 간결함이 더 아름답다
- 부연 설명이 필요치 않게 한다
- 패턴에 집중한다
- 실수를 허용한다
- 일관된 흐름, 디테일, 내비게이션을 유지한다
- 단어 검사를 한다
- 일관성을 유지한다
- 무엇이든 기록한다
- 접근성 테스트
- 시각 장애
- 청각 장애
- 육체적 장애
- 인지적 장애
- 접근성 가이드라인
- 배터리 사용량 테스트
- 완충 상태의 배터리에서 시작하는 시나리오
- 얼마 남지 않은 배터리에서 시작하는 시나리오
- 배터리 사용량 측정 도구
- 스트레스 테스트와 인터럽트 테스트
- 성능 테스트
- 모바일 앱의 성능 테스트
- 대기 모드 테스트
- 설치 테스트
- 업데이트 테스트
- iOS 업데이트 테스트
- 안드로이드 업데이트 테스트
- 데이터베이스 테스트
- 로컬 저장소 테스트
- 보안 테스트
- 흔히 저지르는 실수
- 보안 요구사항 분석
- 모바일 보안 테스트 요약
- 플랫폼 가이드라인 테스트
- 적합성 테스트
- 로그 파일 확인
- 상식을 파괴하라
- 체크리스트, 연상 기호, 마인드맵
- 체크리스트
- 연상 기호
- 마인드맵
- 버그의 처리 기술
- 버그 ID
- 설명
- 재현 경로
- 기대 결과
- 실제 결과
- 회피 경로
- 재현 빈도
- 운영체제, 모바일 플랫폼, 모바일 기기
- 모바일 기기 정보
- 브라우저 버전
- 소프트웨어 빌드 버전
- 네트워크와 환경 정보
- 언어
- 테스트 데이터
- 심각도
- 버그 카테고리
- 스크린샷과 비디오 녹화
- 로그 파일
- 버그 발견자의 이름
- 기타 정보
- 애플리케이션 품질 연합
- 요약
- 5장. 모바일 테스트 자동화와 관련 도구
- 뒤집힌 모양의 테스트 피라미드
- 모바일 테스트 피라미드
- 테스트 자동화 도구의 종류
- 이미지 인식 기반
- 좌표 인식 기반
- OCR/텍스트 인식 기반
- 네이티브 객체 인식 기반
- 캡처 리플레이 방식
- 추천 도구
- 자동화 대상 선정
- 에뮬레이터? 시뮬레이터? 실제 기기?
- 에뮬레이터와 시뮬레이터의 장점
- 그리고 단점
- 실제 기기의 장점
- 그리고 단점
- 어떻게 할 것인가
- 모바일 테스트 자동화 도구의 선택
- 테스트 자동화 도구의 선택 기준
- 자동화 도구의 현주소
- 안드로이드 도구
- 로보티움
- 스푼
- 셀렌드로이드
- 안드로이드용 칼라바쉬
- 앱피움
- 에스프레소
- 그 밖의 안드로이드 테스트 도구
- 안드로이드용 추천 도구
- iOS 도구
- UI Automation
- iOS용 칼라바쉬
- ios-driver
- Keep It Functional
- 앱피움
- 그 밖의 iOS용 테스트 도구
- 추천 iOS 도구
- 모바일 테스트 자동화 도구 요약
- 안드로이드 도구
- 지속적인 통합 시스템
- 베타 버전의 배포 도구
- 요약
- 뒤집힌 모양의 테스트 피라미드
- 6장. 크라우드 테스트와 클라우드 테스트
- 크라우드 테스트
- 프라이빗 크라우드 테스트
- 모바일 클라우드 테스트
- 프라이빗 클라우드
- 클라우드 기반 테스트 자동화
- 요약
- 크라우드 테스트
- 7장. 모바일 테스트와 런칭 전략
- 모바일 테스트 전략
- 요구사항 정의
- 테스트 범위
- 한 대의 기기로 범위 제한
- 여러 대의 기기로 범위 제한
- 가능한 한 많은 기기의 사용
- 유스케이스의 범위 제한
- 테스트 레벨과 테스트 기법 정의
- 테스트 레벨
- 테스트 기법
- 테스트 데이터
- 대상 기기와 테스트 환경의 선택
- 수동 테스트와 와일드 테스트
- 모바일 체크리스트와 투어
- 테스트 자동화
- 프로덕트 리스크
- 모바일 런칭 전략
- 런칭 전: 릴리스 관련 자료 확인
- 런칭 후: 런칭 이후에 벌어지는 일
- 커뮤니티 지원
- 고객 리뷰
- 충돌 리포트
- 트래킹과 통계
- 요약
- 모바일 테스트 전략
- 8장. 모바일 테스터의 필수 역량
- 모바일 테스터의 역량
- 커뮤니케이션
- 호기심
- 비판적 사고력
- 끈기
- 끊임없는 학구열
- 창의성
- 고객 지향적인 마인드
- 프로그래밍 능력과 전문 기술
- 모바일 테스트 역량을 키우는 방법
- 다른 앱 참고하기
- 특정 기기에서 발생하는 충돌 이슈
- 키보드
- 위젯
- 성능
- 로그인 기능과 모바일 결제
- 앱 권한
- 모바일 기기의 하드웨어 사용
- 관찰
- 대회 참가
- 모바일 커뮤니티와 모바일 세상
- 테스트 관련 콘퍼런스, 서적, 잡지, 블로그
- 콘퍼런스
- 커뮤니티
- 서적
- 잡지
- 블로그
- 요약
- 모바일 테스터의 역량
- 9장. 앞으로 펼쳐질 일들
- 사물인터넷
- 스마트홈
- 스마트카
- 웨어러블 기기
- 스마트워치와 피트니스 밴드
- 스마트 안경
- 헬스 앱
- 결론
- 성공을 확신하는 다섯 가지 핵심 요소
- 성공 핵심 요소 1: 목표 기대치를 높게 잡는다
- 성공 핵심 요소 2: 모바일 기기 전문가가 된다
- 성공 핵심 요소 3: 같은 장소에 머물러 테스트하지 않는다
- 성공 핵심 요소 4: 프로그래밍을 시작한다
- 성공 핵심 요소 5: 꾸준히 배운다
- 성공을 확신하는 다섯 가지 핵심 요소
- 요약
- 사물인터넷