풀스택 테스트: 10가지 테스트 기술의 기본 원칙과 전략 pdf 다운로드를 무료로 제공합니다 전략, 실무 접근법, 도구, 저자의 노하우까지 모두 담은 테스트 바이블 소프트웨어 개발 주기 동안 수행되는 10가지 테스트 기술의 기본 원칙을 소개하고, 상황별로 각 기술을 활용하는 방법과 전략을 자세히 설명합니다
관련 책 pdf 모음
책 소개
(1) 자바 및 자바스크립트를 사용해 실무에서 테스트에 어떻게 접근하는지 단계별로 안내하는 점, (2) 여러 가지 테스트 도구를 소개하는 점, (3) 각 도구로 최대의 가치를 창출할 수 있는 시점을 자세히 설명하는 점이 이 책의 차별화된 특징입니다. 또한 오랜 실무 경험을 통해 터득한 저자의 테스트 노하우를 공유합니다. 따라서 웹 및 모바일 애플리케이션 테스트에 필요한 모든 기술을 접하고 익숙해질 수 있습니다. 전문 테스터뿐만 아니라 애플리케이션 개발자, 데브옵스 엔지니어 같이 테스트와 밀접한 관련이 있는 업무를 담당하는 모든 사람에게 큰 도움이 되는 테스트 교과서라 할 수 있습니다. 자동화된 테스트가 등장하고, 기능적 사용 사례를 넘어 성능, 보안, 안정성과 같은 교차 기능 요구 사항에 대한 테스트가 중요해지면서 풀스택 테스트는 하나의 분야가 되었습니다. 이 책은 풀스택 테스트를 위한 종합적인 자료로, 테스트 기술에 관한 일관된 설명과 실제 사례를 제공하고 어느 시점에 어떤 유형의 테스트를 수행해야 하는지 상세히 설명합니다. 또한 실습을 통해 테스트 접근 방식을 구체화합니다. 실습에서 다루는 도구는 시간이 지남에 따라 변경되거나 발전할 수 있지만, 이 책에서는 올바른 테스트를 구성하는 방법에 초점을 맞추기 때문에 도구가 변경되더라도 적용 및 응용할 수 있습니다.
풀스택 테스트: 10가지 기술 기본
Chapter 1 풀스택 테스트
1.1 좋은 품질을 위한 풀스택 테스트
1.2 시프트 레프트 테스트
1.3 10가지 풀스택 테스트
요점 정리
Chapter 2 수동 탐색적 테스트
2.1 구성 요소
_2.1.1 탐색적 테스트 프레임워크
__동등 클래스 분할
__경곗값 분석
__상태 전환
__결정 테이블
__페어와이즈 테스트
__샘플링
__오류 추측
_2.1.2 기능 탐색
__기능적 사용자 흐름
__실패와 오류 처리
__UI 룩앤필
__교차 기능적 측면
2.2 수동 탐색적 테스트 전략
_2.2.1 애플리케이션 이해
_2.2.2 부분별 탐색
_2.2.3 단계별로 탐색적 테스트 반복
2.3 실습
_2.3.1 API 테스트
__포스트맨
_2.3.2 웹UI 테스트
__브라우저
__버그 마그넷
__크롬 개발자 도구
2.4 인사이트: 테스트 환경 위생
요점 정리
Chapter 3 자동화된 기능 테스트
3.1 구성 요소
_3.1.1 마이크로 테스트와 매크로 테스트 유형
__유닛 테스트
__통합 테스트
__계약 테스트
__서비스 테스트
__UI 기능 테스트
__엔드 투 엔드 테스트
3.2 자동화된 기능 테스트 전략
3.3 실습
_3.3.1 UI 기능 테스트
__자바-셀레니움 웹 드라이버 프레임워크
___사전 요구 사항
___메이븐
___TestNG
___셀레니움 웹 드라이버
___페이지 객체 모델
___설정 및 워크플로
__자바스크립트-Cypress 프레임워크
___사전 요구 사항
___Cypress
___설정 및 워크플로
_3.3.2 서비스 테스트
__자바 REST Assured 프레임워크
___사전 요구 사항
___설정 및 워크플로
_3.3.3 유닛 테스트
__JUnit
___설정 및 워크플로
3.4 추가 테스트 도구
_3.4.1 팩트
_3.4.2 가라테
_3.4.3 AI/ML 자동화 테스트 도구
__테스트 작성
__테스트 유지 관리
__테스트 보고서 분석
__테스트 거버넌스
3.5 인사이트
_3.5.1 주의해야 할 안티 패턴
__아이스크림 콘 안티 패턴
__컵케이크 안티 패턴
_3.5.2 100% 자동화 커버리지
요점 정리
Chapter 4 지속적 테스트
4.1 구성 요소
_4.1.1 CI 소개
_4.1.2 CI/CT/CD 프로세스
_4.1.3 기본 원칙과 에티켓
4.2 CT 전략
_4.2.1 CI의 이점
4.3 실습
_4.3.1 Git
__설정
__워크플로
_4.3.2 젠킨스
__설정
__워크플로
4.4 4가지 주요 지표
요점 정리
Chapter 5 데이터 테스트
5.1 구성 요소
_5.1.1 데이터베이스
_5.1.2 캐시
_5.1.3 배치 처리 시스템
_5.1.4 이벤트 스트림
5.2 데이터 테스트 전략
5.3 실습
_5.3.1 SQL
__사전 요구 사항
__워크플로
___Create
___Insert
___Select
___필터링 및 그룹화
___정렬
___함수 및 연산자
___표현식 및 술어
___중첩 쿼리
___결합
___업데이트 및 삭제
_5.3.2 JDBC
__설정 및 워크플로
_5.3.3 아파치 카프카 및 제로코드
__설정
__워크플로
5.4 추가 테스트 도구
_5.4.1 테스트 컨테이너
_5.4.2 Deequ
요점 정리
Chapter 6 시각적 테스트
6.1 구성 요소
_6.1.1 시각적 테스트 소개
_6.1.2 프로젝트/비즈니스별 유스 케이스
6.2 프론트엔드 테스트 전략
_6.2.1 유닛 테스트
_6.2.2 통합 테스트
_6.2.3 스냅샷 테스트
_6.2.4 엔드 투 엔드 기능 테스트
_6.2.5 시각적 테스트
_6.2.6 교차 브라우저 테스트
_6.2.7 프론트엔드 성능 테스트
_6.2.8 접근성 테스트
6.3 실습
_6.3.1 BackstopJS
__설정
__워크플로
_6.3.2 Cypress
__설정
__워크플로
6.4 추가 테스트 도구
_6.4.1 Applitools Eyes
_6.4.2 스토리북
6.5 인사이트: 시각적 테스트 적용
요점 정리
Chapter 7 보안 테스트
7.1 구성 요소
_7.1.1 일반적인 사이버 공격
_7.1.2 STRIDE 위협 모델
_7.1.3 애플리케이션 취약점
_7.1.4 위협 모델링
__위협 모델링 단계
__위협 모델링 연습
__위협 모델의 보안 테스트 케이스
7.2 보안 테스트 전략
7.3 실습
_7.3.1 OWASP Dependency-Check
__설정 및 워크플로
_7.3.2 OWASP ZAP
__설정
__워크플로
___수동 탐색
___ZAP 스파이더
___스캐닝
___CI에 ZAP 통합하기
7.4 추가 테스트 도구
_7.4.1 스닉 IDE 플러그인
_7.4.2 탈리스만 커밋 전 훅
_7.4.3 크롬 개발자 도구와 포스트맨
7.5 인사이트: 보안은 습관이다
요점 정리
Chapter 8 성능 테스트
8.1 백엔드 성능 테스트 구성 요소
_8.1.1 성능, 매출, 주말 휴무의 상관관계
_8.1.2 성능 목표
_8.1.3 성능에 영향을 미치는 요소
_8.1.4 핵심 성과 지표
_8.1.5 성능 테스트 유형
_8.1.6 부하 패턴 유형
_8.1.7 성능 테스트 단계
__1단계: 목표 KPI 정의
__2단계: 테스트 케이스 정의
__3단계: 성능 테스트 환경 준비
__4단계: 테스트 데이터 준비
__5단계: APM 도구 통합
__6단계: 도구를 사용한 성능 테스트 스크립트 작성 및 실행
8.2 실습
_1단계: 목표 KPI 정의
_2단계: 테스트 케이스 정의
_3~5단계: 데이터, 환경, 도구 준비
_6단계: 제이미터를 사용한 성능 테스트 스크립트 작성 및 실행
__설정
__워크플로
__다른 성능 테스트 케이스 설계
__데이터 기반 성능 테스트
__CI에 통합
8.3 추가 테스트 도구
_8.3.1 개틀링
_8.3.2 아파치 벤치마크
8.4 프론트엔드 성능 테스트 구성 요소
_8.4.1 프론트엔드 성능에 영향을 미치는 요소
_8.4.2 RAIL 모델
_8.4.3 프론트엔드 성능 메트릭
8.5 실습
_8.5.1 WebPage Test
__워크플로
_8.5.2 라이트하우스
__워크플로
8.6 추가 테스트 도구
_8.6.1 페이지 스피드 인사이트
_8.6.2 크롬 개발자 도구
8.7 성능 테스트 전략
요점 정리
Chapter 9 접근성 테스트
9.1 구성 요소
_9.1.1 접근성 사용자 페르소나
_9.1.2 접근성 생태계
_9.1.3 예제: 스크린 리더
_9.1.4 WCAG 2.0: 기본 원칙과 수준
_9.1.5 레벨 A 적합성 표준
__인지 가능
__조작 가능
__이해 가능
__견고함
_9.1.6 접근성 지원 개발 프레임워크
9.2 접근성 테스트 전략
_9.2.1 사용자 스토리의 접근성 체크리스트
_9.2.2 자동화된 접근성 감사 도구
_9.2.3 수동 테스트
9.3 실습
_9.3.1 WAVE
__워크플로
_9.3.2 라이트하우스
__워크플로
_9.3.3 라이트하우스 노드 모듈
__워크플로
9.4 추가 테스트 도구
_9.4.1 Pa11y CI 노드 모듈
_9.4.2 Axe-core
9.5 인사이트: 접근성 문화
요점 정리
Chapter 10 교차 기능 요구 사항 테스트
10.1 구성 요소
10.2 CFR 테스트 전략
_10.2.1 기능성
_10.2.2 사용성
_10.2.3 신뢰성
_10.2.4 성능
_10.2.5 지원성
10.3 기타 CFR 테스트 방법
_10.3.1 카오스 엔지니어링
__카오스 실험
_10.3.2 아키텍처 테스트
_10.3.3 인프라 테스트
_10.3.4 규정 준수 테스트
__일반 데이터 보호 규정(GDPR)
__PCI DSS와 PSD2
10.4 인사이트: 진화성
요점 정리
Chapter 11 모바일 테스트
11.1 구성 요소
_11.1.1 모바일 환경
__장치
__앱
__네트워크
_11.1.2 모바일 앱 아키텍처
11.2 모바일 테스트 전략
_11.2.1 수동 탐색적 테스트
_11.2.2 자동화된 기능 테스트
_11.2.3 데이터 테스트
_11.2.4 시각적 테스트
_11.2.5 보안 테스트
_11.2.6 성능 테스트
_11.2.7 접근성 테스트
_11.2.8 CFR 테스트
11.3 실습
_11.3.1 앱피움
__사전 요구 사항
__안드로이드 에뮬레이터
__앱피움 2.0 설정
__워크플로
_11.3.2 앱피움 시각적 테스트 플러그인
__설정
__워크플로
11.4 추가 테스트 도구
_11.4.1 안드로이드 스튜디오 데이터베이스 인스펙터
_11.4.2 성능 테스트 도구
__몽키
__확장 제어: 네트워크 스로틀러
__앱피움 성능 API
_11.4.3 보안 테스트 도구
__MobSF
__Qark
_11.4.4 접근성 검사기
11.5 인사이트: 모바일 테스트 피라미드
요점 정리
Chapter 12 테스트 너머의 세계로 나아가기
12.1 테스트 기본 원칙
_12.1.1 결함 예방
_12.1.2 최종 사용자의 관점 반영
_12.1.3 마이크로 및 매크로 수준 테스트
_12.1.4 빠른 피드백
_12.1.5 지속적 피드백
_12.1.6 품질 지표 측정
_12.1.7 커뮤니케이션과 협업
12.2 품질을 우선으로 생각하기 위한 소프트 스킬
마무리
Chapter 13 신기술 테스트 소개
13.1 인공지능과 머신러닝
_13.1.1 ML
_13.1.2 ML 애플리케이션 테스트
13.2 블록체인
_13.2.1 블록체인 개념
_13.2.2 블록체인 애플리케이션 테스트
13.3 사물인터넷(IoT)
_13.3.1 IoT의 5 계층 아키텍처
_13.3.2 IoT 애플리케이션 테스트
13.4 증강 현실(AR)과 가상 현실(VR)
_13.4.1 AR 및 VR 애플리케이션 테스트
마무리