본문으로 바로가기

Chapter 5: Managing the Test Activities (시험 활동 관리)

테스트 프로젝트의 계획, 실행, 관리에 대한 모든 것을 다루는 챕터입니다.

5.1 Test Planning (시험 계획)

  • Test planning is the activity of defining the objectives of testing and the approach for meeting those objectives. The output of this activity is the Test Plan.
  • 시험 계획은 테스팅의 목표를 정의하고, 그 목표를 달성하기 위한 접근법을 구체화하는 활동입니다. 이 활동의 산출물이 바로 '시험 계획서(Test Plan)'입니다.
  • Key Contents of a Test Plan (시험 계획서의 주요 내용) (암기)
    • Test scope, objectives, and risks (시험 범위, 목표, 리스크)
    • Test approach (테스트 접근법)
    • Entry and Exit criteria (진입 및 종료 조건)
    • Test schedule and budget (테스트 일정 및 예산)
    • Resource allocation and staffing (자원 할당 및 팀 구성)

5.2 Test Estimation Techniques (테스트 추정 기법)

  • Test estimation involves predicting the time, effort, and cost required to complete test activities. Two main categories are metrics-based and expert-based techniques.
  • 테스트 추정은 시험 활동을 완료하는 데 필요한 시간, 노력, 비용을 예측하는 과정입니다. 크게 메트릭 기반 기법과 전문가 기반 기법으로 나뉩니다.
  • Comparison of Estimation Techniques (추정 기법 비교) (암기)
Category Technique Name Explanation
Metrics-based Estimation based on Ratios 비율 기반 추정: 과거 프로젝트의 데이터(예: 개발 노력 대비 테스트 노력 비율)를 활용하여 현재 프로젝트의 테스트 노력을 추정합니다.
Metrics-based Extrapolation 외삽법: 현재까지의 프로젝트 데이터(예: 주당 해결된 결함 수)를 기반으로 미래의 노력을 예측합니다.
Expert-based Planning Poker 플래닝 포커: 애자일 팀에서 사용하는 기법으로, 팀원들이 동시에 추정치를 제시하고 토론을 통해 합의점을 찾는 방식입니다.
Expert-based Wideband Delphi 광대역 델파이: 여러 전문가가 익명으로 추정하고 결과를 공유한 뒤, 반복적으로 조율하여 합의된 추정치를 도출하는 기법입니다.

5.3 Risk Management (리스크 관리)

  • Risk management is the process of identifying, analyzing, and responding to risks that could negatively impact the project or the product quality.
  • 리스크 관리는 프로젝트 또는 제품 품질에 부정적인 영향을 미칠 수 있는 리스크를 식별, 분석하고 대응하는 프로세스입니다.
  • Types of Risks (리스크의 종류) (암기)
    • Project Risks: Risks that affect the project's ability to achieve its objectives (e.g., lack of staff, tight deadlines, budget issues).
      • 프로젝트 리스크: 프로젝트 목표 달성 자체에 영향을 주는 리스크 (예: 인력 부족, 촉박한 일정, 예산 문제).
    • Product Risks: Risks related to the quality of the product itself (e.g., software failing to meet requirements, poor performance, security vulnerabilities).
      • 제품 리스크: 제품 자체의 품질과 관련된 리스크 (예: 요구사항 미충족, 성능 저하, 보안 취약점).

5.4 Test Monitoring, Control, and Completion (시험 모니터링, 제어 및 완료)

  • Test Monitoring: Continuously checking the progress of test activities against the plan.
  • 시험 모니터링: 계획 대비 테스트 활동의 진행 상황을 지속적으로 확인하는 것입니다.
  • Test Control: Taking necessary actions to correct any deviations from the plan.
  • 시험 제어: 모니터링 결과, 계획에서 벗어난 부분을 바로잡기 위해 조치를 취하는 것입니다.
  • Test Completion: Summarizing and reporting on test activities once the exit criteria are met.
  • 시험 완료: 종료 조건이 충족되었을 때, 테스트 활동 전체를 요약하고 보고하는 것입니다.

5.5 Configuration Management (형상 관리)

  • Configuration management is the process of establishing and maintaining the integrity of all test-related items (testware) throughout the project lifecycle.
  • 형상 관리는 프로젝트 생명주기 동안 모든 테스트 관련 항목(테스트웨어)의 버전을 관리하고 무결성을 유지하는 프로세스입니다. 이를 통해 테스트의 일관성과 재현성을 보장합니다.

5.6 Defect Management (결함 관리)

  • Defect management is the systematic process of recording, tracking, and managing defects found during testing.
  • 결함 관리는 테스팅 중 발견된 결함을 기록, 추적, 관리하는 체계적인 프로세스입니다.
  • Key Contents of a Defect Report (결함 보고서의 주요 내용) (암기)
    • Unique ID (고유 식별자)
    • Title/Summary (제목/요약)
    • Test environment (테스트 환경)
    • Steps to reproduce (재현 절차)
    • Actual vs. Expected results (실제 결과 vs. 기대 결과)
    • Severity and Priority (심각도와 우선순위)
    • Attachments (e.g., screenshots, logs) (첨부 파일)

(중요!) Severity vs. Priority (심각도 vs. 우선순위)

  • Severity: The degree of impact a defect has on the system. (결함이 시스템에 미치는 영향의 정도)
  • Priority: The urgency with which a defect needs to be fixed. (결함을 얼마나 시급하게 수정해야 하는지의 정도)

Special Focus: Agile Test Quadrants (애자일 테스트 사분면)

애자일 프로젝트에서 "어떤 테스트를, 왜, 언제 해야 하는가"에 대한 공통된 이해를 돕는 프레임워크입니다.

  • Agile Test Quadrants (애자일 테스트 사분면) (암기)
Quadrant Axis (English) Axis (Korean) Purpose & Key Tests
Q1 Technology Facing / Supports Team 기술 중심 / 팀 지원 Guide Development (개발 지원): Unit Tests, Component Tests. (Mostly Automated)
Q2 Business Facing /
Supports Team
비즈니스 중심 / 팀 지원 Guide Development (개발 지원): Functional Tests, Story Tests, Prototypes. (Automated & Manual)
Q3 Business Facing /
Critiques Product
비즈니스 중심 / 제품 비평 Evaluate the Product (제품 평가): Exploratory Testing, Usability Testing, UAT. (Mostly Manual)
Q4 Technology Facing /
Critiques Product
기술 중심 / 제품 비평 Evaluate the Product (제품 평가): Performance, Load, Security Testing. (Mostly Automated)


ISTQB Chapter 5 핵심 산출물 내용 비교

구분 시험 계획서
(Test Plan)
시험 모니터링 메트릭
(Test Monitoring Metrics)
결함 보고서
(Defect Report)
 Purpose 테스트 활동의 청사진(로드맵)을 정의하고, 모든 이해관계자가 활동의 범위와 목표에 대해 합의하도록 함 테스트 진행 상황을 객관적으로 추적하고 평가하여 계획과의 차이를 파악하고, 제어 활동의 근거를 마련함 발견된 결함에 대한 정보를 명확하고 재현 가능하게 개발자에게 전달하여, 신속한 분석과 수정을 돕기 위함
Key
Contents
1. 범위 (Scope)
• 테스트할 대상과 제외할 대상 정의

2. 목표 (Objectives)
• 이 테스트로 달성하고자 하는 것 (품질 목표)

3. 접근법 (Approach)
• 테스트 레벨, 유형, 기법 등 전략

4. 진입/종료 조건 (Entry/Exit Criteria)
• 테스트 시작과 완료의 기준

5. 일정 및 예산 (Schedule & Budget)
• 시간과 비용 계획

6. 자원 (Resources)
• 인력, 테스트 환경, 도구

7. 리스크와 비상 계획 (Risks & Contingencies)

• 예상되는 문제와 대응 방안
1. 커버리지 메트릭 (Coverage Metrics)
• 요구사항 커버리지 (%)
• 코드 커버리지 (구문/결정) (%)
• 리스크 커버리지 (%)

2. 테스트 실행 메트릭 (Execution Metrics)
• 계획된 테스트 케이스 대비 실행된/성공/실패한 테스트 케이스 수
• 테스트 실행 시간

3. 결함 메트릭 (Defect Metrics)
• 발견된 총 결함 수
• 결함 밀도 (Defect Density)
• 심각도/우선순위 별 결함 분포
• 결함 발견율 및 해결율

4. 신뢰도 메트릭 (Confidence Metrics)

• 팀의 품질 신뢰도 설문조사 결과
1. 고유 식별자 (Unique ID)
• 각 결함을 구별하기 위한 번호

2. 제목 (Title/Summary)
• 결함 내용을 한눈에 알 수 있는 요약

3. 재현 절차 (Steps to Reproduce)
• 결함을 재현할 수 있는 상세한 단계별 설명

4. 기대 결과 vs. 실제 결과 (Expected vs. Actual Result)
• 원래 어떻게 동작해야 했는데, 실제로는 어떻게 동작했는지 비교

5. 심각도와 우선순위 (Severity & Priority)
• 결함의 영향도와 수정의 시급성

6. 테스트 환경 (Test Environment)
• OS, 브라우저, 디바이스 등 결함이 발생한 환경 정보

7. 첨부 파일 (Attachments)
• 스크린샷, 로그 파일, 동영상 등

핵심 요약:

  • 시험 계획서 (Test Plan): 테스트를 **'시작하기 전'**에 만드는 미래의 계획입니다.
  • 시험 모니터링 메트릭 (Metrics): 테스트를 **'진행하는 중'**에 수집하는 현재의 상태를 보여주는 데이터입니다.
  • 결함 보고서 (Defect Report): 테스트 중 '문제가 발견되었을 때' 작성하는 과거의 사건에 대한 기록입니다.

Chapter 6: Test Tools (테스트 도구)

테스트 활동을 지원하고 효율성을 높이는 다양한 도구에 대해 다루는 챕터입니다.

6.1 Tool Support for Testing (테스팅을 위한 도구 지원)

  • Various tools can support different test activities, automating repetitive tasks and improving efficiency and accuracy.
  • 다양한 도구들은 여러 테스트 활동을 지원하며, 반복적인 작업을 자동화하고 효율성과 정확성을 향상시킬 수 있습니다.
  • Classification of Test Tools (테스트 도구의 분류) (암기)
Tool Category (English) 한국어 분류 Main Function & Examples
Test Management Tools 시험 관리 도구 Manage test process, requirements, and defects. (Jira, Zephyr)
Static Testing Tools 정적 테스팅 도구 Analyze code without executing it. (SonarQube, Checkstyle)
Test Execution and Logging Tools 테스트 실행 및 로깅 도구 Execute automated test scripts and log results. (Selenium, Appium, Cucumber)
Performance and Monitoring Tools 성능 및 모니터링 도구 Measure and analyze system performance. (JMeter, LoadRunner)

6.2 Benefits and Risks of Test Automation (테스트 자동화의 이점과 리스크)

  • Test automation can provide significant benefits but also comes with risks that must be managed.
  • 테스트 자동화는 상당한 이점을 제공하지만, 반드시 관리해야 할 리스크도 함께 따릅니다.
  • Benefits (이점):
    • Reduction of repetitive manual work (반복적인 수작업 감소)
    • Increased consistency and repeatability (일관성 및 반복성 증가)
    • Faster execution of regression tests (리그레션 테스트의 빠른 실행)
  • Risks (리스크) (암기):
    • Unrealistic expectations (비현실적인 기대)
    • High initial investment and maintenance cost (높은 초기 투자 및 유지보수 비용)
    • Difficulty in maintaining test scripts if the system changes frequently (시스템이 자주 변경될 경우 스크립트 유지보수의 어려움)

6.3 Effective Use of Tools (효과적인 도구 사용)

  • The success of a tool depends on selecting the right tool and implementing it effectively within the organization.
  • 도구의 성공적인 도입은 올바른 도구를 선택하고 조직 내에서 효과적으로 구현하는 데 달려있습니다.
  • Key Success Factors (주요 성공 요인) (암기):
    • Gradual rollout to the organization (조직 내 점진적인 도입)
    • Defining clear objectives for tool use (도구 사용에 대한 명확한 목표 설정)
    • Providing training and mentoring for users (사용자를 위한 교육 및 멘토링 제공)
    • Conducting a Proof-of-Concept (PoC) or Pilot Project before full adoption (전면 도입 전 개념 증명 또는 파일럿 프로젝트 수행)



반응형