Bird
Raised Fist0
Testing Fundamentalstesting~10 mins

Equivalence partitioning in Testing Fundamentals - Test Execution Trace

Choose your learning style10 modes available
Test Overview

This test checks if the input field correctly accepts valid age values using equivalence partitioning. It verifies that the system accepts ages within the valid range and rejects invalid ones.

Test Code - PyTest
Testing Fundamentals
def test_age_input_equivalence_partitioning():
    valid_ages = [18, 30, 65]  # valid partition
    invalid_ages = [17, 0, -5, 100]  # invalid partitions

    for age in valid_ages:
        result = validate_age(age)
        assert result == True, f"Age {age} should be valid"

    for age in invalid_ages:
        result = validate_age(age)
        assert result == False, f"Age {age} should be invalid"

def validate_age(age):
    return 18 <= age <= 65
Execution Trace - 9 Steps
StepActionSystem StateAssertionResult
1Test startsTest environment ready, validate_age function loaded—PASS
2Loop through valid ages: 18, 30, 65Calling validate_age with age=18Check if validate_age(18) returns TruePASS
3Calling validate_age with age=30Inside validate_age functionCheck if validate_age(30) returns TruePASS
4Calling validate_age with age=65Inside validate_age functionCheck if validate_age(65) returns TruePASS
5Loop through invalid ages: 17, 0, -5, 100Calling validate_age with age=17Check if validate_age(17) returns FalsePASS
6Calling validate_age with age=0Inside validate_age functionCheck if validate_age(0) returns FalsePASS
7Calling validate_age with age=-5Inside validate_age functionCheck if validate_age(-5) returns FalsePASS
8Calling validate_age with age=100Inside validate_age functionCheck if validate_age(100) returns FalsePASS
9Test endsAll assertions passed—PASS
Failure Scenario
Failing Condition: validate_age returns True for an invalid age or False for a valid age
Execution Trace Quiz - 3 Questions
Test your understanding
What does the test verify for the age value 30?
AThat age 30 causes an error
BThat age 30 is rejected as invalid
CThat age 30 is accepted as valid
DThat age 30 is ignored
Key Result
Equivalence partitioning helps reduce test cases by grouping inputs that should behave the same, ensuring efficient and effective testing.

Practice

(1/5)
1. What is the main purpose of equivalence partitioning in software testing?
easy
A. To test every possible input value individually
B. To write code for automated testing
C. To divide input data into groups where test cases can be reduced
D. To check the user interface design

Solution

  1. Step 1: Understand equivalence partitioning concept

    Equivalence partitioning divides input data into groups where all inputs in a group behave similarly.
  2. Step 2: Identify the main goal

    The goal is to reduce the number of test cases by testing one value from each group instead of all values.
  3. Final Answer:

    To divide input data into groups where test cases can be reduced -> Option C
  4. Quick Check:

    Equivalence partitioning = reduce test cases [OK]
Hint: Group inputs to test fewer cases efficiently [OK]
Common Mistakes:
  • Thinking it tests every input value
  • Confusing with UI testing
  • Assuming it is about coding tests
2. Which of the following is the correct way to apply equivalence partitioning for an input field that accepts ages from 18 to 60?
easy
A. Test ages 17, 18, 30, 60, 61
B. Test ages 18, 30, 60 only
C. Test ages 0, 18, 60, 100
D. Test ages 18, 19, 20, 21

Solution

  1. Step 1: Identify equivalence partitions

    Partitions are: below valid range (<18), valid range (18-60), above valid range (>60).
  2. Step 2: Select test values from each partition

    Choose one value from each: 17 (below), 18 and 60 (edges of valid), 30 (inside valid), 61 (above).
  3. Final Answer:

    Test ages 17, 18, 30, 60, 61 -> Option A
  4. Quick Check:

    Test one from each partition [OK]
Hint: Pick one value from each input group including edges [OK]
Common Mistakes:
  • Testing only valid values
  • Ignoring boundary values
  • Testing too many values inside one partition
3. Given the input field accepts numbers 1 to 100, which test inputs represent valid equivalence partitions?
medium
A. [50, 75, 100]
B. [0, 1, 50, 100, 101]
C. [-1, 0, 101]
D. [1, 50, 100]

Solution

  1. Step 1: Define partitions

    Partitions are: below valid (<1), valid (1-100), above valid (>100).
  2. Step 2: Check which inputs cover all partitions

    [0, 1, 50, 100, 101] includes 0 (below), 1 and 100 (edges valid), 50 (inside valid), 101 (above).
  3. Final Answer:

    [0, 1, 50, 100, 101] -> Option B
  4. Quick Check:

    Inputs cover all partitions [OK]
Hint: Include below, inside, and above range values [OK]
Common Mistakes:
  • Missing values outside valid range
  • Testing only inside range
  • Ignoring boundary values
4. You have a form field that accepts a password length from 8 to 12 characters. Which test set correctly applies equivalence partitioning and fixes the error in this set: [7, 8, 10, 12, 13]?
medium
A. [7, 8, 10, 12, 13]
B. [8, 10, 12]
C. [7, 8, 12, 13]
D. [6, 8, 10, 12, 14]

Solution

  1. Step 1: Identify partitions and errors

    Partitions: below valid (<8), valid (8-12), above valid (>12). The original set misses some below and above values.
  2. Step 2: Fix test set to cover all partitions

    [6, 8, 10, 12, 14] adds 6 (below), 14 (above), and includes valid 8, 10, 12, covering all partitions correctly.
  3. Final Answer:

    [6, 8, 10, 12, 14] -> Option D
  4. Quick Check:

    Test covers below, valid, and above partitions [OK]
Hint: Include clear below and above boundary values [OK]
Common Mistakes:
  • Missing values outside valid range
  • Not testing boundary values
  • Using only valid inputs
5. A software accepts input scores from 0 to 100. Using equivalence partitioning, which test inputs should you select to cover all partitions if the input is extended to accept decimal values between 0.0 and 100.0?
hard
A. [ -1, 0.0, 50.5, 100.0, 101 ]
B. [ 0, 25, 50, 75, 100 ]
C. [ 0.0, 50.0, 100.0 ]
D. [ -0.1, 0, 50, 100, 100.1 ]

Solution

  1. Step 1: Define partitions including decimals

    Partitions: below valid (<0.0), valid (0.0 to 100.0), above valid (>100.0). Decimals allowed inside valid range.
  2. Step 2: Choose test inputs covering all partitions

    [ -1, 0.0, 50.5, 100.0, 101 ] includes -1 (below), 0.0 (valid edge), 50.5 (valid decimal), 100.0 (valid edge), 101 (above).
  3. Final Answer:

    [ -1, 0.0, 50.5, 100.0, 101 ] -> Option A
  4. Quick Check:

    Test inputs cover all partitions including decimals [OK]
Hint: Include decimals and boundary values in partitions [OK]
Common Mistakes:
  • Ignoring decimal values inside valid range
  • Missing values outside valid range
  • Testing only integers
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard