반응형

안녕하세요.

 

회사에서 Tester 관련 교육으로 ISTQB Certified Tester Foundation Level 자격증 수업을 수강 하게 되었습니다.

 

시험 공부 겸 수업 내용을 정리 해보려고 합니다.

 

* 수업은 SK하이닉스와 STA 테스트 컨설팅에서 진행 하였고, 권혜영 강사님의 수업 이었습니다.

 


1. 테스트 레벨

 

- 테스트 레벨 : 함께 분류되고 관리되는 테스트 활동의 집합

  - 컴포넌트 테스팅

  - 통합 테스팅

  - 시스템 테스팅

  - 인수 테스팅

 

- 테스트 레벨 분류 특성

  - 구체적인 목적

  - 테스트 베이시스

  - 테스트 대상

  - 일반적인 결함과 장애

  - 구체적인 접근법과 역할

  - 테스트 환경

 

 

2. 통합 테스팅의 형태

 

- 컴포넌트 통합 테스팅

  - 통합된 컴포넌트 간의 상호 운용성과 인터페이스에 집중

  - 컴포넌트 테스팅 후 수행하여 자동화 하는 경우가 많음

  - 반복적 점진적 개발에서는 컴포넌트 통합 테스트를 지속적 통합 프로세스의 일부로 수행

  - 일반적으로 개발자가 수행

 

- 시스템 통합 테스팅

  - 시스템, 패키지, 마이크로 서비스 간의 상호 운용성과 인터페이스에 집중

  - 기존 컴포넌트 와의 상호 운용 혹은 인터페이스를 다루기도 함

  - 일반적으로 테스터가 수행

 

- 사용자 인수 테스팅 (UAT, User Acceptance Testing)

  - 실제 또는 시뮬레이션 된 운영 환경에서 예정된 사용자가 사용하기에 얼마나 적합한지 확인

  - 사용자가 그들의 필요에 따라 요구사항을 충족하면서 최소한의 어려움, 비용, 리스크 등으로 비지니스 프로세스를 수행할 수 있다는 자신감 획득

 

- 운영 인수 테스팅 (OAT, Operational Acceptance Testing)

  - 운영자 또는 시스템 관리자가 비록 예외적이고 어려운 조건에서라도 운영 환경에서 사용자를 위해 시스템을 정상적으로 유지할 수 있다는 자신감 획득

  - 운영자 또는 시스템 관리 직원에 의해 수행되는 시스템 인수 테스팅

  - 시뮬레이션 된 생산 환경에서 수행

  - 운영 인수 테스팅은 운영 측면에 집중

    * 백업 및 복원 테스팅 / 설치, 삭제, 업그레이드 / 유지보수 작업

    * 긴급 복구

    * 사용자 관리 / 데이터 로딩 및 마이그레이션 작업

    * 보안 취약점 확인

    * 성능 테스팅

 

 

- 계약 및 규제 인수 테스팅

  - 사용자나 독립적인 테스터가 수행

 

- 알파 및 베타 테스팅

  - 시스템을 사용 할 조건 및 환경과 관련된 결함 발견

  - 시장 출시 전 사용자, 고객, 운영자 등으로 부터 피드백을 받기 원하는 개발자가 사용

  - 알파 테스팅 : 개발 조직 현장에서 개발팀 외 인원응로 수행

  - 베타 테스팅 : 고객이나 운영자의 환경에서 수행

 

 

3. 테스트 우선 접근법

 

4. 테스트 유형

 

- 특정 테스트 목적을 위해 소프트웨어 시스템이나 시스템의 일부 특정 속성을 테스트하는 활동의 집합

 

- 대표적인 목적

  - 기능 품질 특성 평가

  - 비기능 품질 특성 평가

  - 컴포넌트나 시스템의 아키텍쳐 및 구조가 정확하고 안전하며 명시된 것과 일치하는지 평가

  - 수정의 효과 평가

 

- 기능 테스팅

  - 시스템이 수행해야 하는 기능 평가

  - 기능 : 시스템이 해야 하는 것

  - 기능 성숙도 (완전성)

  - 기능 정확도 (정확성)

  - 기능 타당성 (적합성)

  - 모든 테스트 레벨에서 수행

  - 블랙박스 기법 사용

  - 기능 커버리지 : 기능 요소의 어떤 유형이 테스트에 의해 어느 정도 실행됐는지를 측정

 

- 시스템 특성 평가

  - 사용성 (유용성), 성능 효율성 (수행 효율성), 보안성

  - 시스템이 얼마나 잘 동작하는지에 대한 테스팅

  - 모든 테스트 레벨에서 수행

  - 가능한 초반에 수행

  - 블랙박스 기법 사용

  - 비기능 커버리지 : 특정 비기능 요소가 테스트로 어느 정도 실행됐는지를 측정

 

 

5. ISO/IEC 25010 품질 특성과 부특성

 

출처 : https://kairoka-sqa.tistory.com/4

 

6. 화이트박스 테스팅

 

- 시스템의 내부 구조 (코드, 아키텍쳐, 워크플로우, 시스템 내 데이터 플로우) 나 구현을 기반으로 테스트 도출

 

- 구조 커버리지

  - 특정 구조 요소가 테스트에 의해 어느 정도 실행됐는지 측정

  - 커버되고 있는 요소 유형에 대해 백분율로 표기

  - 컴포넌트 테스팅 레벨

    * 코드 커버리지 : 구문 커버리지 / 결정 커버리지

  - 컴포넌트 통합 테스팅 레벨

    * 인터페이스 커버리지

 

- 테스트 설계와 구현에 코드가 구축된 방법, 데이터가 저장되는 방법, 코드 커버리지 도구를 사용하는 방법과 해당 결과를 제대로 분석하기 위한 지식 필요

 

 

7. 변경 관련 테스팅

 

- 시스템이 변경되면 해당 변경이 결함을 제대로 수정했는지, 기능을 올바르게 구현 했는지 또 예상하지 못한 부작용이 발생하지 않았는지 확인 하기 위한 테스팅 필요

 

- 확인 테스팅 (Confirmation Testing)

  - 결함을 제대로 수정 했는지 확인

 

- 리그레션 테스팅 (Regression Testing)

  - 의도하지 않은 부작용을 발견하기 위한 테스트

 

- 모든 테스트 레벨에서 수행 가능

 

- 반복적 점진적 개발 수명주기에서는 코드에 잦은 변경이 가해지고, 시스템이 진화하는 특성 때문에 확인 및 리그레션 테스팅이 매우 중요 -> 자동화 필요

 

- 개별 오브젝트가 자주 업데이트 되거나 교체되는 IoT 시스템에서는 더욱 중요

 

- 자동화에 적합 : 초반에 시작 해야 함

 

 

8. 유지 보수 테스팅

 

- 유지보수의 일환으로 변경이 이루어지게 되면, 변경의 성공 여부를 평가하고, 시스템의 변경되지 않은 부분에서 부작용의 발생 여부를 확인하기 위해 수행하는 테스팅

 

- 유지보스 테스팅의 범위

  - 변경의 리스크 수준

  - 기존 시스템의 규모

  - 변경의 규모

 

- 유지보수 테스팅의 범위에 따라 다양한 테스트 유형을 활용한 복수의 테스트 레벨에서 유지보수 테스팅 수행

 

- 개선을 위한 변경 (Modification) : 계획된 확장, 수정 혹은 긴급 변경, 운영 환경 변경, 결함 및 취약성 패치 등

 

- 이관을 위한 변경 (Migration) : 신규 환경에 대한 운영 테스트 필요 / 데이터 전화 ㄴ테스트

 

- 단종 (Retirement) : 보관 처리에 대한 테스팅, 복원/회수 절차에 대한 테스팅

반응형
Posted by 해리팍
BLOG main image

Chanhyun Park (해리팍)
Software Engineer @ SK hynix

Contact Info.
parkch0708@hanmail.net
chanhyun0708@gmail.com
chanhyun.park@sk.com

카테고리

All (1502)
Profile (2)
Park's Life (600)
Computer System (165)
Computer Programming (39)
Computer Study (54)
Computer Etc. (189)
Scuba Diving (137)
Golf (8)
Traveling (245)
생활 정보 (12)
Pokemon GO (50)