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