3장 - 3.1 정적 테스팅의 기초
·
ISTQB/CTFL
정적 테스팅소프트웨어를 실행하지 않고 수행하는 테스팅코드, 프로세스 명세, 시스템 아키텍처 명세 등 작업 산출물을 수동으로 또는 도구를 사용해 평가테스팅 목표품질 개선결함 식별가독성, 완전성, 정확성, 테스트 용이성, 일관성 등의 특성 평가베리피케이션과 벨리데이션 모두에 적용 가능협업 예제예제 매핑, 사용자 스토리 공동 작성, 백로그 개선 작업 시 테스터, 비즈니스 담당자, 개발자가 협업사용자 스토리가 정의된 기준을 충족하는지 확인리뷰 기법을 통해 사용자 스토리가 완전하고 이해하기 쉬우며, 테스트 가능한 인수 조건을 가지고 있는지 확인정적 분석테스트 케이스가 필요 없고 도구를 사용해 수행동적 테스팅 전에 문제를 식별할 수 있어 상대적으로 적은 노력 소요주로 코드 결함 식별 유지보수성 및 보안 평가에 사용..
ISTQB 2장 예상 문제
·
ISTQB/CTFL
2장의 정리된 내용을 바탕으로 예상문제 풀이 및 해설예상문제문제 1: 컴포넌트 테스팅과 시스템 테스팅의 주요 차이점은 무엇인가?A) 컴포넌트 테스팅은 독립 테스트팀이 수행하고, 시스템 테스팅은 개발자가 수행한다B) 컴포넌트 테스팅은 개별 컴포넌트를 테스트하고, 시스템 테스팅은 전체 시스템을 테스트한다C) 컴포넌트 테스팅은 기능 테스팅만 포함하고, 시스템 테스팅은 비기능 테스팅만 포함한다D) 컴포넌트 테스팅은 상향식 접근법을 사용하고, 시스템 테스팅은 하향식 접근법을 사용한다정답(드래그) B 해설(드래그) 컴포넌트 테스팅은 개별 컴포넌트를 테스트하는 것이고, 시스템 테스팅은 전체 시스템의 전반적인 동작과 기능을 테스트하는 것문제 2: 반복적 점진적 개발 모델에서 리그레션 테스팅이 필요한 이유는 무엇인가?A..
ISTQB CTFL - 2.3. 유지보수 테스팅
·
ISTQB/CTFL
유지보수의 범주문제수정환경 변화 적응성능 또는 유지보수성 개선유지보수 릴리스/배포계획된 릴리스/배포계획되지 않은 릴리스/배포(핫픽스)유지보수 과정변경 전 영향도 분석 수행변경 구현의 성공 검증리그레션 확인유지보수 테스팅의 범위변경의 리스크 수준기존 시스템의 크기변경사항의 크기유지보수와 유지보수 테스팅의 계기계획된 개선사항수정을 위한 변경, 핫픽스운영 환경의 업그레이드나 마이그레이션새로운 환경 관련 테스트데이터 변환 테스트 필요시애플리케이션 단종데이터 보관 테스팅데이터 복원 및 복구 절차 테스팅예상문제문제 1: 유지보수 테스팅의 범위를 결정하는 요소가 아닌 것은?A) 변경의 리스크 수준B) 기존 시스템의 크기C) 새로운 기능의 복잡성D) 변경사항의 크기정답(드래그) C 해설(드래그) 유지보수 테스팅의 범위..
ISTQB CTFL - 2.2. 테스트 레벨과 테스트 유형
·
ISTQB/CTFL
테스트 레벨함께 구성하고 관리하는 테스트 활동 집합특정 개발 단계의 소프트웨어와 관련된 테스트 프로세스의 인스턴스단계에 따라 소프트웨어는 개별 컴포넌트부터 완성된 시스템, 경우에 따라 시스템의 시스템까지 포함소프트웨어 개발수명주기(SDLC) 내에서 테스트 레벨*순차적 소프트웨어 개발수명주기(SDLC) : * 한 레벨의 완료 조건이 다음 레벨의 시작 조건에 포함되도록 테스트 레벨을 정의*반복적 모델 : * 개발 활동이 여러 테스트 레벨에 걸쳐 진행되고 시간이 지나면서 테스트 레벨이 서로 겹침테스트 유형특정 품질 특성 관련 테스트 활동의 집합대부분 모든 테스트 레벨에서 수행 가능2.2.1 테스트 레벨컴포넌트 테스팅(단위 테스팅)개별 컴포넌트 테스트테스트 하네스 또는 단위 테스트 프레임워크 필요주로 개발자가 ..
ISTQB CTFL - 2.1 소프트웨어 개발수명주기(SDLC)에서의 테스팅
·
ISTQB/CTFL
소프트웨어 개발수명주기(SDLC) 모델은 소프트웨어 개발 프로세스를 상위 수준에서 추상화하여 표현한 것이다. SDLC 모델은 개발 프로세스의 단계와 활동 유형이 논리적, 시간적으로 어떻게 연관되는지 정의한다.순차적 개발 모델: 폭포수 모델, V-모델반복적 개발 모델: 나선형 모델, 프로토타이핑점진적 개발 모델: 통합 프로세스소프트웨어 개발 프로세스의 일부 활동은 특정 개발 방법과 애자일 실천법으로 설명된다.인수 테스트 주도 개발(ATDD)행위 주도 개발(BDD)도메인 주도 설계(DDD)익스트림 프로그래밍(XP)기능 주도 개발(FDD)칸반(Kanban)린(lean) IT스크럼(Scrum)테스트 주도 개발(TDD)2.1.1. 소프트웨어 개발수명주기(SDLC)가 테스팅에 미치는 영향테스팅의 성공을 위해 알맞은..
ISTQB CTFL - 1.3 테스팅의 원리
·
ISTQB/CTFL
1.3 테스팅의 원리1. 테스팅은 결함의 존재를 밝히는 활동테스팅은 결함이 있음을 보여줄 수 있지만, 결함이 없음을 증명할 수 없다. 결함이 발견되지 않아도 소프트웨어가 완벽하다는 뜻은 아니다.2. 완벽한 테스팅은 불가능모든 것은 테스트하는 것은 현실적으로 불가능하다. 따라서 테스트 기법, 테스트 케이스 우선순위 지정, 리스크 기반 테스팅을 통해 테스트 노력을 집중해야 한다.3. 조기 테스팅의 중요성프로세스 초기에 결함을 발견해 제거하면 후속 결함을 예방할 수 있다. 이는 소프트웨어 개발 수명주기 후반에 발생할 수 있는 장애를 줄이고, 품질 비용을 절감할 수 있다.4. 결함의 집중 현상대부분의 결함은 소수의 시스템 컴포넌트에 집중되는 경향이 있다. 이는 파레토 원리의 예로, 리스크 기반 테스팅의 주요 입..
ISTQB CTFL - 1.4. 테스트 활동, 테스트웨어, 테스트 역할
·
ISTQB/CTFL
테스팅은 정황에 의존적이지만, 상위 수준에서 봤을 때 만약 없다면 테스팅이 테스트 목적을 달성하기 어렵게 되는 보편적인 테스트 활동이 있다. 이런 테스트 활동이 테스트 프로세스(test process)를 구성하게 된다. 테스트 프로세스는 여러 요인을 기반으로 주어진 상황에 맞게 조정될 수 있다. 테스트 프로세스에 포함할 테스트 활동과 그러한 활동의 구현 방법과 수행 시기는 보통 해당하는 상황의 테스트 계획을 할 때 결정한다1.4.1 테스트 활동과 업무테스트 활동과 업무는 순차적으로 수행되는 것처럼 보일 수 있으나, 실제로는 반복적 또는 병렬로 구현되는 경우가 많다.테스트 계획테스트 목적을 정의한 다음 전반적인 상황에 따른 제약 조건 내에서 목적을 가장 잘 달성할 수 있는 접근법을 선택하는 것테스트 모니터..
ISTQB CTFL - 1.5. 테스팅의 필수 기술 및 모범 사례
·
ISTQB/CTFL
기술이란 어떤 일을 잘 해내는 능력으로, 그 사람이 가진 지식, 경험, 적성에서 비롯된다. 우수한 테스터는 업무를 잘 수행하기 위한 몇 가지 필수적인 기술을 갖추어야 한다. 우수한 테스터는 팀플레이, 즉 협업에 능한 사람이어야 하며, 다양한 수준의 독립성으로 테스팅을 수행할 수 있어야 한다.1.5.1 테스팅에 보편적으로 필요한 기술테스팅 지식철저함, 신중함, 호기심, 세부사항에 대한 주의력, 체계적인 접근우수한 의사소통 기술, 경청하는 자세, 팀플레이분석적 사고, 비판적 사고, 창의석기술 지식도메인 지식테스터는 종종 좋지 않은 소식을 전해야 하므로, 의사소통 기술이 매우 중요하다. 테스트 결과 전달 시 비판으로 오해받을 수 있으며, 확증 편향 때문에 정보 수용이 어려울 수 있다. 테스팅을 파괴적인 활동으..