1장 무엇이 좋은가?
한 줄 요약
테스터란 무슨 일을 하는 직업인가?
내용 정리
테스터란?
테스터란 무슨 직업인가
- 감시관(?) X → 위반하더라도 막을 권한이 없다.
- 문지기(?) X → 테스터의 기준은 정상 제품보다 기준이 높아 부적절하다.
- 조언자(?) ≈ → 프로젝트 진행 조언자 But 문제적 측면만 조언하는 역할
테스터의 소양
테스터가 갖춰야 할 소양 (호기심, 두려움X, 재치, 직설)
- 호기심 : 주어진 시나리오 이외의 다양한 행동
- 두려움 X : 망가뜨리는 것에 대한 두려움 X
- 재치 : 대개 잘 작성된 명세서 X. 제한된 환경에서 가장 시급한 이슈에 대해, 가장 적합한 질문을 던져, 가장 최선의 결정을 내릴 능력
- 직설적 : 그 어떤 불편한 정보라도 숨기지 말고 보고할 것.
(테스터는 불편한 진실을 드러냄으로써 보수를 받는 사람)
테스터의 자세
주니어 테스터가 갖춰야할 소양
- 수행하는 테스트에 대한 주인의식 필요
- 산더미 같은 테스트 계획서
→ 빠른 반복 수행을 통한 단순 처리 (X)
→ 빠진 새로운 테스트 케이스 고민
- if 완벽한 테스터 계획서라면
→ 자동화에 대한 고민
테스터들의 버그 발견법 Tip
버그 발견 TIP
- 다양한 테스트 작성의 공통점
- 모든 문서를 최대한 많이 읽기
- 아주 많은 질문 던져대기
→ 테스트 전 구조 & 흐름을 명확히 인지
- 경험을 통한 테스트
- 해당 프로젝트에 적합한 테스트이 무엇인지 학습 (기법을 아는 것과 활용하는 건 다르다.)
현대의 테스터 역할
확장되는 테스터 역할
- 개발 이후가 아닌 제품 설계부터 참여
∵ 버그 탐지 능력을 초기부터 활용하여 버그 관리
- 현대의 테스터 역할?
- 품질을 개선하는 것(?)
- 개발자들의 TDD 관리자(?)
- 버그 탐색에 대한 정형화(?)
-> 그럼에도, 버그를 찾는 것이야말로 테스터의 첫 번째 역할
버그를 대하는 자세
테스터는 버그를 "탐색"하는 사람
- 모든 버그를 보고할 것
- 버그에 대한 리스크 판단 X
(사소한 결함이 불쾌함 유발 가능성 내포)
- 테스터는 문제를 “탐색” 하는 사람
- 문제에 대한 리스크 “판단”하는 사람 X
-> 문제에 대한 리스크 판단은 경영진의 몫
- 버그에 대한 해결 가능성 판단 X
-> 문제 해결 이슈는 개발자의 몫
좋은 버그 탐색을 수행하려면...
테스트는 결함을 찾기 위해 하는 활동
- 개발자끼리 공유하는 부분을 집중할 것
- 시스템 구조를 충분히 이해할 것
- 정상 작동 증명하기 X, 정상 작동 X 증명하기
정리
기억에 남는 문장
- 테스터는 진실만을 말하는 것이 가치를 얻을 수 있는 길이다.
- 버그를 찾는 것이야말로 바로 테스트의 목적이다.
- 사소한 버그라도 중요한 버그를 보고하는 것과 동일한 시간이 투자된다.그럼에도 테스트들에게는 모든 버그를 보고할 의무가 있다.
배운 것
- 테스터란? 모든 문제를 탐색하는 사람
- 개발자끼리 공통된 영역, 상호작용하는 영역을 집중하라
참고도서
Adam Goucher, ⌜뷰티풀 테스팅⌟, 지앤선, 2011