Blackbox Test Design Techniques: Equivalence Partitioning and Boundary Value Analysis

Jul 3, 2024

Blackbox Test Design Techniques: Equivalence Partitioning and Boundary Value Analysis

Introduction

  • Session: Part 1 of Session 3 of Module 4
  • Topics Covered: Equivalence Partitioning and Boundary Value Analysis
  • Test Design Techniques: Specification-based or Blackbox test design techniques

Equivalence Partitioning (EP)

Overview

  • Type: Blackbox test design technique
  • Applicable Levels: Unit, Integration, System, Acceptance
  • Purpose: Divide test conditions into sets that are treated the same by the software

How It Works

  1. Partitioning: Partition input data into valid and invalid partitions
    • Example: Text field accepting numbers 1 to 100
      • Valid Partition: 1-100
      • Invalid Partitions: <1 and >100
  2. Design: Create test cases by testing one condition from each partition
    • Assumption: All values in a partition are treated similarly
    • Example: E-commerce discounts based on purchase amounts
      • No Discount: $0 to $50
      • 5% Discount: $50.01 to $200
      • 10% Discount: $200.01 to $500
      • 15% Discount: $500.01 to max
      • Invalid Partitions: Below $0 and Above max

Advantages

  • Efficiency: Reduces number of test cases needed
  • Coverage: Ensures better coverage of possible input scenarios

Boundary Value Analysis (BVA)

Overview

  • Type: Blackbox test design technique
  • Purpose: Test the behavior of software at the boundaries of equivalence partitions

How It Works

  1. Identify Boundaries: Test cases are created using boundary values

    • Example: Text field accepting 1 to 1000
      • Valid Partition: 1-1000
      • Invalid Boundaries: 0, 1001
  2. Minimum and Maximum Values: Select minimum and maximum from valid partitions

    • Example: For the range $0 to $50, boundary values are 0 and 50

Advantages

  • Edge Testing: Focuses on values at the edge where software is likely to fail

Combining EP and BVA

Why Combine?

  • Comprehensive Testing: Testing boundaries alone or partitions alone is not sufficient
  • Structured Approach: Ensures thorough testing by covering both partitions and edges

Best Practices

  1. Separate Testing: Test partitions separately from boundaries
  2. Test Order: Start with valid partitions, then invalid partitions, then valid boundaries, and finally invalid boundaries
  3. Thorough Testing: Incorporate both techniques in test design

Conclusion

  • Learnings: Specification-based test design, Equivalence Partitioning, Boundary Value Analysis
  • Importance: These techniques streamline the testing process and ensure comprehensive test coverage
  • Efficiency: Using EP and BVA together helps in effectively covering all aspects of the software with reduced effort

Thank you!