Software Testing Fundamental Processes

Jul 3, 2024

Software Testing Lecture Notes

Introduction

  • Test Planning and Test Control are fundamental parts of the test process
  • Test Planning: Initial phase involving preparation and strategy
  • Test Control: Ongoing activity to measure and control test progress

Test Control

Definition

  • Ongoing measurement and control of test progress
  • Conducted daily to track defects and test case execution status

Key Activities

  1. Monitoring Defects
    • Track defect status daily (raised, in progress, fixed, verified)
  2. Tracking Test Cases
    • Monitor execution status (completed, pending, remaining)
  3. Reporting
    • Daily reports provided to stakeholders on status and deviations from plan
  4. Corrective Actions
    • Actions to align progress with plan (e.g., extra time, additional resources)
  5. Release Decisions
    • Based on defect and test case status, decide on software release

Test Analysis and Design

Key Activities

  1. Reviewing Test Basis
    • Analysis of documents (SRS, design docs)
    • Identify gaps and ambiguities early
  2. Identifying Test Conditions
    • Define items/conditions to be tested
  3. Designing Tests
    • Use design techniques (e.g., Equivalence partitioning, Boundary value analysis)
  4. Evaluating Testability
    • Ensure requirements/system are clear and testable
  5. Designing Test Environment
    • Determine hardware, software, and tools needed

Test Implementation and Execution

Key Activities in Implementation

  1. Develop and Prioritize Test Cases
    • Convert test conditions into test cases
    • Prioritize based on risk
  2. Create Test Suites
    • Logical collections of test cases
  3. Prepare Test Environment
    • Set up required hardware/software

Key Activities in Execution

  1. Executing Test Cases
    • Perform steps, check actual vs. expected results
  2. Recording Outcomes
    • Log environment details, software version
  3. Reporting Defects
    • If actual results don't match expected, log defects
  4. Re-testing
    • After defect fixes, re-test to ensure correctness