Bird
Raised Fist0
Testing Fundamentalstesting~20 mins

Equivalence partitioning in Testing Fundamentals - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Equivalence Partitioning Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Identify valid equivalence partitions for age input

A software form accepts an age input between 18 and 65 inclusive. Which of the following correctly describes the valid equivalence partitions for this input?

AOne partition: ages 18 to 65 inclusive
BTwo partitions: ages less than 18, and ages 18 to 65 inclusive
CThree partitions: ages less than 18, ages 18 to 65 inclusive, and ages greater than 65
DFour partitions: ages less than 18, ages 18 to 30, ages 31 to 65, and ages greater than 65
Attempts:
2 left
💡 Hint

Think about all possible input groups including invalid and valid ranges.

❓ Predict Output
intermediate
2:00remaining
Output of test case count using equivalence partitions

Given the input domain for a field is divided into 3 equivalence partitions, and boundary value analysis adds 2 test cases per boundary, how many total test cases are generated?

Testing Fundamentals
partitions = 3
boundaries = partitions - 1
boundary_tests = boundaries * 2
total_tests = partitions + boundary_tests
print(total_tests)
A9
B7
C8
D6
Attempts:
2 left
💡 Hint

Calculate boundaries as one less than partitions, then multiply by 2 for boundary tests, then add partitions.

❓ assertion
advanced
2:00remaining
Assertion to verify partition coverage in test suite

Which assertion best verifies that a test suite covers all equivalence partitions for input values 1-10, 11-20, and 21-30?

Aassert all(test in range(1,31) for test in tests)
Bassert all(any(test in range(1,11) for test in tests), any(test in range(11,21) for test in tests), any(test in range(21,31) for test in tests))
Cassert any(test in range(1,31) for test in tests)
Dassert any(test in range(1,11) for test in tests) and any(test in range(11,21) for test in tests) and any(test in range(21,31) for test in tests)
Attempts:
2 left
💡 Hint

Think about checking that each partition has at least one test case.

🔧 Debug
advanced
2:00remaining
Find the error in equivalence partition test code

What is the error in this Python test code that tries to check input partitions?

Testing Fundamentals
def test_partitions(inputs):
    valid = [x for x in inputs if 10 <= x <= 20]
    invalid = [x for x in inputs if x < 10 or x > 20]
    assert len(valid) > 0
    assert len(invalid) > 0
    assert len(valid) + len(invalid) == len(inputs)
    assert all(x >= 10 and x <= 20 for x in valid)
    assert all(x < 10 or x > 20 for x in invalid)
AThe last assertion uses 'and' instead of 'or', causing it to always fail
BThe first assertion should check for len(valid) == 0
CThe invalid list comprehension is missing parentheses
DThe function does not return any value
Attempts:
2 left
💡 Hint

Check the logic in the last assertion carefully.

❓ framework
expert
3:00remaining
Designing test cases using equivalence partitioning in automation

You are automating tests for a form field that accepts numeric input 1 to 100. Using equivalence partitioning, which set of test inputs best covers all partitions including invalid inputs?

A[0, 1, 50, 100, 101]
B[1, 50, 100]
C[-1, 0, 1, 100, 101, 102]
D[10, 20, 30, 40, 50]
Attempts:
2 left
💡 Hint

Include values from below, inside, and above the valid range.

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