반응형

안녕하세요.

 

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

 

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

 

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

 


1. 테스팅의 필요성

 

- 올바르게 동작하지 않는 소프트웨어는 금전, 시간을 비롯 사고를 야기 할 수 있음.

 

- 테스팅의 필요성

  - 운영 중 장애 발생 가능성을 줄이기 위해

  - 계약/법적 요구사항이나 특정 산업 표준을 만족시키기 위해

  - 컴포넌트나 시스템의 품질에 기여하기 위해

 

- 소프트웨어 테스팅은 소프트웨어의 품질을 평가하고, 운영 중 소프트웨어 장애 발생 가능성을 줄이는 방법

 

 

2. 테스팅의 일반적인 목적

 

 - 요구사항, 사용자 스토리, 설계, 소스코드 등과 같은 작업 산출물 평가에 의한 결함 예방

 - 명시된 모든 요구사항의 충족 검증

 - 테스트 대상의 완성 여부 확인 및 기대치 대로 동작 하는지 확인

 - 테스트 대상의 품질 수준에 대한 자신감 획득

 - 장애 및 결함 발견과 이에 따른 부적절한 소프트웨어 품질 리스크 레벨 감소

 - 이해 관계자가 테스트 대상의 품질 수준을 결정하는 데 필요한 충분한 정보 제공

 - 계약/법률/규제 요구사항이나 표준의 준수 및 테스트 대상이 이러한 요구사항이나 표준을 준수하는지 확인

 

- 테스트 목적을 충족하는 것은 소프트웨어 개발과 유지보수 전반의 성공 확률을 높일 수 있음

 

- 테스팅의 목적은 테스트 대상 컴포넌트나 시스템의 정황에 따라 달라질 수 있음 : 수명 주기 모델, 테스트 레벨 등

 

- 테스트 레벨에 따라 달라지는 테스팅의 목적

  - 컴포넌트 테스팅 : 결함을 최대한 초기에 많이 십려하고 수정 / 코드 커버리지 향상

  - 인수 테스팅 : 시스템이 기대한 대로 동작 하는지 확인 / 요구 사항 충족 확인 / 시스템응ㄹ 배포하는 것에 대한 리스크 정보 제공

 

 

3. 오류, 결함, 장애

 

- 오류 (실수, Mistake) : 비지니스 분석가가 고객의 요구 A를 B로 오해

 

- 결함 (Defect, Fault, Bug)

  - case A) 요구사항 명세서에 B를 명시 : 요구사항 결함

  - case B) 코드 결함

 

- 장애 (Failure)

  - case A) B를 실행하였지만 실행 되지 않음 / 시스템 테스트

  - case B) 고객에게 B를 릴리스 했지만 인수 거부 / 인수 테스트

 

- 테스팅 : 테스트를 수행 하여 소프트웨어 결함으로 인한 장애 식별

 

- 디버깅 : 장애의 원인을 찾고, 분석하여 수정하는 개발 활동

 

- 장애는 환경 조건으로 인해 발생 할 수도 있음

 

- 테스트 결과가 기대한 것과 다르다고 해서 무조건 장애가 있다고 볼 수는 없음

 

 

4. 성공을 위한 테스팅의 기여

 

- 결함을 발견, 발견된 결함을 수정하는 것은 컴포넌트나 시스템의 품질에 기여 하는 것

 

- 요구사항 리뷰 혹은 사용자 스토리 개선에서 결함을 식별하고 제거

 

- 시스템을 설계하는 동안 테스터가 시스템 설계자와 적극적으로 협업 할 경우, 설계와 그것을 어떻게 테스트해야 하는지에 대해 서로 좀 더 깊이 있게 이해할 수 있음

 

- 코드를 개발하는 동안 테스터가 개발자와 적극적으로 협업 할 경우, 코드와 그것을 어떻게 테스트 해야 하는지에 대해 서로 좀 더 깊이 있게 이해하게 됨

 

- 테스터가 릴리스 전에 소프트웨어를 확인하고 검증 하면 장애 발견과 결함 제거를 지원 할 수 있음

 

 

5. 품질 보증과 테스팅

 

- 품질 관리 : 품질 측면에서 조직이 나아가야 하는 방향을 제시하고 제어하는 모든 활동 (품질 보증, 제어를 포함한 여러 가지 활동을 포함)

 

 

6. 테스팅 7가지 원리 (중요)

 

1) 테스팅은 결함이 존재함을 밝히는 활동 (결함이 없음을 밝히는 활동 X)

 

2) 완벽한 테스팅은 불가능

 

3) 조기 테스팅으로 시간과 비용 절약 가능

 

4) 결함은 집중

 

5) 살충제 패러독스에 유의

 

6) 테스팅은 정황에 의존적

 

7) 오류 부재는 궤변

반응형
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)