안녕하세요.
회사에서 Tester 관련 교육으로 ISTQB Certified Tester Foundation Level 자격증 수업을 수강 하게 되었습니다.
시험 공부 겸 수업 내용을 정리 해보려고 합니다.
* 수업은 SK하이닉스와 STA 테스트 컨설팅에서 진행 하였고, 권혜영 강사님의 수업 이었습니다.
1. 테스트 도구
- 정황에 따른 테스트 도구의 목적
- 반복적인 작업이나 수동으로 진행했을 떄 상당한 리소스를 필요로 하는 작업을 자동화해서 테스트 활동의 효율성을 높임
- 테스트 프로세스 전반에 걸쳐 수동 테스트 활동을 지원해서 테스트 활동의 효율성을 높임
- 테스팅의 일관성과 결함 재현성 향상으로 테스트 활동의 품질을 향상
- 수동으로 실행할 수 없는 활동을 자동화 (대규모 성능 테스팅 등)
- 테스팅의 신뢰성을 향상
- 테스팅 활동을 지원하는 테스트 도구 종류
- 테스팅에 직접 사용 하는 도구
- 요구사항, 테스트 케이스, 테스트 프로세스, 자동 테스트 스크립트, 테스트 결과, 테스트 데이터, 결함을 관리하고, 테스트 실행 보고와 모니터링을 지원하는 도구
- 조사와 평가에 사용 하는 도구
- 테스팅을 지원 하는 모든 도구
2. 테스트 도구 분류
- 테스팅 및 테스트웨어 관리 지원 도구 : 소프트웨어 수명주기 전체에 걸쳐 모든 테스팅 활동에 사용
- 테스트 관리 도구 / 애플리케이션 수명 주기 관리 도구
- 요구사항 관리 도구
- 결함 관리 도구
- 형상 관리 도구
- 지속적인 통합 도구 (개발자 지원)
- 정적 테스팅 지원 도구 : 정적 분석 지원 도구
- 테스트 설계 및 구현 지원 도구
- 모델 기반 테스팅 도구
- 테스트 데이터 준비 도구
- 테스트 실행 및 로깅 지원 도구
- 테스트 실행 도구
- 커버리지 도구
- 테스트 하네스
- 성능 측정과 동적 분석 지원 도구
- 성능 테스팅 도구
- 동적 분석 도구
3. 특수 목적 테스팅 지원 도구
- 일반적인 테스트 프로세스를 지원하는 도구 외에 특정 테스팅 이슈를 지원 하는 도구
- 데이터 품질 평가
- 데이터 변환 / 마이그레이션
- 사용성 테스팅
- 접근성 테스팅
- 현지화 테스팅
- 보안 테스팅
- 이식성 테스팅
- 탐사 효과 : 침입적 도구를 사용해 달라진 결과
- 침입적 도구 : 도구 자체가 테스트의 실제 결과에 영향을 주는 도구 (성능 테스팅 도구, 코드 커버리지 도구)
4. 테스팅 자동화의 효과
- 잠재적 가치
- 반복적인 수동 업무의 감소로 시간 절약
- 월등한 일관성과 반복성 제공
- 보다 객관적인 평가 기준 제공
- 테스팅 관련 정보에 접근이 쉬움
- 잠재적 위험
- 도구에 대한 비현실적인 기대
- 초기 도구 도입에 필요한 시간, 비용, 노력에 대한 과소 평가
- 도구로 의미 있고 지속적인 효과를 얻는 데 필요한 시간과 노력을 과소 평가
- 도구가 생성하는 테스트 자산을 유지하기 위한 노력의 과소 평가
- 도구에 대한 지나친 의존
- 테스트 자산에 대한 버전의 관리 소흘
- 요구사항 관리 도구, 형상 관리 도구, 결함 관리 도구, 다수의 공급 업체에서 제공하는 도구 환경에서 주요 도구 간의 관계와 상호 운용성 이슈를 관리 하지 않음
- 도구 공급 업체의 폐업, 해당 도구의 판매 중단, 해당 도구가 다른 공급 업체에 매각 될 수 있음
- 지원, 업그레이드, 결함 수정에 대한 공급 업체의 부적절한 대응
- 오픈 소스 프로젝트는 연기되거나 중단 될 수 있음
- 도구가 새로운 플랫폼이나 기술을 지원하지 않음
- 도구의 소유권이 명확하지 않음
5. 테스트 실행 도구 고려 사항
- 자동화 테스트 스크립트를 사용해 테스트 실행
- 캡쳐 기반 테스트 접근법 : 테스터의 수동적인 조작을 녹화해 테스트를 자동화 하는 것은 테스트 스크립트의 수가 많을 경우 부적절
* 저장된 스크립트마다 특정 데이터와 행위를 1차원적으로 표현 -> 예상하지 못한 이벤트에 취약
* 시스템의 사용자 인터페이스가 변경되면 스크립트도 유지 보수 필요
- 데이터 주도 테스트 접근법 : 테스트 입력 값과 기대 결과값을 스프레드시트에 저장하고, 더 많은 공통 스크립트를 활용해 해당 테스트 데이터를 읽어 들여 동일한 테스트 스크립트를 매번 다른 데이터로 반복적으로 실행
- 키워드 주도 테스트 접근법 : 해야 할 행동을 설명하는 키워드를 공통 스크립트가 처리해 키워드 스크립트를 호출 하면 키워드 스크립트가 연관된 테스트 데이터를 처리
- 모델 기반 테스팅 도구
- 테스트 관리 도구는 다른 도구나 스프레드 시트와 연동 할 필요가 있음
- 필요한 정보 생성을 위해
- 요구사항 관리 도구에 저장된 요구사항과의 추적성을 지속적으로 유지하기 위해
- 형상 관리 도구에 저장된 테스트 대상 버전 정보와 연결하기 위해
- 테스트 관리 도구와 다른 도구의 연동은 통합 도구를 사용 할 때 특히 중요
- 애플리케이션 수명 주기 관리 도구에는 조직 내 다양한 그룹에서 사용하는 기타 모듈도 포함되어 있음
6. 도구 선택의 주요 원칙
- 조직의 성숙도, 장단점 평가
- 도구의 지원으로 테스트 프로세스 개선 기회 식별
- 테스트 대상이 이용하는 기술을 이해해 테스트 대상과 호환 가능한 도구 선택
- 호환과 통합이 가능한 도구 확인을 위해 조직에서 이미 사용 하고 있는 빌드와 지속적인 통합 도구 고려
- 명확한 요구사항과 객관적인 기준에 맞는 도구 평가
- 도구를 일정 기간 무료로 시험 해 볼 수 있는지 여부
- 공급자 평가 또는 비 상업적 도구 지원 평가
- 조직이 요구하는 도구 사용 코칭과 멘토 요구 사항 식별
- 도구를 직접 사용 할 사람의 테스팅 역량을 고려한 훈련 수요 확인
- 다양한 라이선스 모델의 장단점 고려
- 필요 시 구체적인 비지니스 사례에 근거해 비용 대비 효과 추정
- 반드시 사전 검증을 진행 해야 함
7. 파일럿 프로젝트
- 파일럿 프로젝트 : 도구 선택과 사전 검증이 성공적으로 끝난 다음 선택한 도구를 조직에 도입하는 시점
- 목적
- 깊이 있는 도구 지식의 습득, 장단점 모두 이해
- 도구를 기존 프로세스와 프랙티스에 어떻게 적용 할 지 평가하고 무엇을 변경 할 지 결정
- 도구와 테스트 자산의 사용, 관리, 저장, 유지보수에 대한 기준 결정
- 목표한 가치를 적절한 비용으로 달성 할 수 있는지 평가
- 도구에서 수집하고 보고하기를 희망하는 메트릭을 이해하고, 그런 메트릭을 도출하고 보고 할 수 있도록 도구를 설정
8. 도구 성공 요인
- 조직의 다른 부서에 도구 사용 전파를 점진적으로 진행
- 도구의 사용법에 맞게 프로세스를 수정하고 개선
- 도구 사용자에게 교육, 코칭, 멘토링 제공
- 도구 사용에 필요한 지침을 정의
- 실제 도구 사용에서 얻는 사용법 정보의 수집 방법 구현
- 도구 사용 현황과 성과를 모니터링
- 특정 도구 사용자에게 지원 제공
- 모든 사용자로부터 사용 후 교훈 수집
'Computer Study > ISTQB' 카테고리의 다른 글
[ISTQB] CTFL (Certified Tester Foundation Level) 합격 후기 및 나름의 전략 (0) | 2022.09.09 |
---|---|
[ISTQB] Certified Tester Foundation Level 5-4. 결함 관리 (0) | 2021.10.13 |
[ISTQB] Certified Tester Foundation Level 5-3. 형상 관리 / 리스크 관리 (0) | 2021.10.11 |
[ISTQB] Certified Tester Foundation Level 5-2. 테스트 계획과 추정, 모니터링 (0) | 2021.10.07 |
[ISTQB] Certified Tester Foundation Level 5-1. 테스트 조직 (0) | 2021.10.05 |