728x90
반응형
1.1 소프트웨어 테스팅이 왜 필요한가?
- 소프트웨어 테스팅의 필요성
- 소프트웨어의 시스템 문제를 최소화 하기 위한 것
- 소프트웨어 결함 원인
- 오류 : 사람의 실수
- 결함 : 오류의 결과
- 장애 : 결함에 의해서 실제 발생된 문제
- 테스팅과 품질
- 소프트웨어가 고객의 기대에 얼마나 부응하는지의 정도를 결정하는 소프트웨어 제한 속성
- 제품 품질(Tester)
- 직접적인 영향을 미치는 품질
- 결함 발견 활동
- 프로세스 품질(QM, QA, QC)
- 개발 과정에서 수행되는 작업의 품질
- 결함 예방 활동
1.2 테스팅이란 무엇인가
- 소프트웨어테스팅 진화 모델
구현이 완료된 상태에서 테스팅 |
Debugging | - 정상동작 여부만 확인 |
Demonstration | - Debugging + 추가적인 테스트 | |
Destruction | - 예외적인 사항을 처리하는지 확인 | |
개발과정에서 테스팅 |
Evalution | - 소프트웨어 테스팅 생명주기, V&V 개념 도입 - 결함이 다음단계로 전이 되는것을 방지 |
Prevention | - 개발 초기부터 발생 가능한 결함을 사전에 방지 |
- 테스팅이란?
- 결함을 발견하는 활동
- 동작(기능)과 성능, 안전성(비기능)이 사용자가 요구하는 수준을 만족하는지 확인하기 위해 결함을 발견하는 메커니즘
- 결함 데이터를 근간으로 개발 프로젝트의 리스크 정보를 정량적 수치로 의사결정권자에게 전달하는 것
- 실제와 기대 결과와의 차이 식별
- 수동 또는 자동화된 방법으로 시험하고 평가
- 일반적인 목적
- 결함 발견
- 사용자 및 비즈니스(법규, 규칙)의 요구사항 충족 확인
- 결함 예방
- 부가적인 목적
- 품질 수준에 대한 자신감 획득(실제 테스트를 하면서 얻어지는 결과)
- 발견된 결함 기반의 수치적 데이터 활용(테스트를 하면서 얻어지는 데이터)
- 개발 프로세스 점검, 이슈 제기
1.3 테스팅의 일반적인 원리
- 테스팅은 결함이 존재함을 밝히는 활동이다.
- 결함을 줄일수는 있지만, 결함이 없다는것을 증명할 수 없다.
- 완벽한 테스팅(가능한 모든 경우의 수)은 불가능하다.
- 테스팅을 개발 초기에 시작한다.
- 문서상 결함 발견
- 전체 테스팅 시간 단축
- 결함은 집중된다.
- 복잡한 구조를 가지고 있는 모듈
- 개발 난이도가 높거나 최신 기술을 사용한 모듈
- 크기가 큰 모듈
- 경험이 미흡한 개발자가 개발한 모듈
- 살충제 패러독스
- 테스팅은 정황에 의존적이다.
- 상황에 따라서 테스트 방식을 선택해야 한다.
- 오류의 부재는 궤변이다.
- 결함을 모두 발견하여 제거 하였어도 품질이 높다고 볼 수 없다.
728x90
반응형
'[ISTQB]' 카테고리의 다른 글
[ISTQB CTAL TAE]Syllabus #용어 (0) | 2023.02.24 |
---|---|
[ISTQB CTFL]Syllabus #3장 오답노트 (0) | 2022.11.22 |
[ISTQB CTFL]Syllabus #2장 오답노트 (0) | 2022.11.22 |
[ISTQB CTFL]Syllabus #1장 오답노트 (0) | 2022.09.15 |
[ISTQB CTFL]개알 #2장 소프트웨어 수명주기와 테스팅 (0) | 2022.09.01 |