Base Choice Coverage: A Complete Guide for ISTQB CTAL-TA Combinatorial Testing
Introduction
Base Choice Coverage is a combinatorial test technique in the ISTQB Advanced Level Test Analyst (CTAL-TA) syllabus, covered under data-based test techniques. It helps a Test Analyst handle systems with many input parameters, each of which can take several values. Testing every combination is usually impossible, so combinatorial techniques define a systematic, measurable subset of combinations. Base Choice Coverage is one of the simplest of these techniques, and it is especially practical.
Why Base Choice Coverage Is Important
1. It controls combinatorial explosion. With 5 parameters of 4 values each, full combination testing needs 4^5 = 1024 tests. Base choice needs only 1 + 5 x 3 = 16.
2. It makes failures easy to diagnose. Each test differs from the base test in exactly one parameter. If the base test passes and a variation fails, the faulty value is immediately identified.
3. It reflects real usage. The base choice is normally the most common, most important or default value. The tests therefore stay close to realistic, high-value scenarios.
4. It is stronger than Each Choice Coverage. Every value is still exercised, but always against a known, stable background of base values. This produces more meaningful tests than arbitrary groupings of values.
5. It is easy to explain to stakeholders. The idea is simple: start from the normal case and change one thing at a time. Business representatives and developers find this easy to review.
What Base Choice Coverage Is
Base Choice Coverage requires the following:
- One value of each parameter is designated as the base choice (base value).
- The base test combines the base values of all parameters.
- Further tests are derived from the base test by changing exactly one parameter to each of its non-base values. All other parameters keep their base values.
Coverage items: the base combination plus every single-parameter variation from it.
Coverage formula: Base Choice Coverage (%) = (number of base choice combinations exercised / total number of base choice combinations required) x 100.
Number of tests needed: 1 + sum of (ni - 1), where ni is the number of values of parameter i.
How It Works: Step by Step
Step 1 - Identify parameters and their values. Values often come from equivalence partitioning or boundary analysis applied to each parameter.
Step 2 - Choose the base value for each parameter. Typical criteria are:
- most frequently used
- most important to the business
- the default value
- the simplest or "happy path" value
The choice should be justified and documented. In most uses, the base values are valid values.
Step 3 - Create the base test from all base values.
Step 4 - Create the variations. For each parameter in turn, create one test for each of its non-base values. Keep all other parameters at their base values.
Step 5 - Handle constraints. Some variations may be infeasible, for example a combination the system does not allow. Remove these or treat them as negative tests, and document them. Infeasible items are excluded from the coverage denominator.
Step 6 - Measure coverage as the proportion of required combinations exercised.
Worked Example
An online shop is tested with three parameters. The base values are marked with *.
- Browser: Chrome*, Firefox, Safari (3 values)
- OS: Windows*, macOS, Linux (3 values)
- Payment: Card*, PayPal (2 values)
Number of tests = 1 + (3-1) + (3-1) + (2-1) = 1 + 2 + 2 + 1 = 6.
T1 (base): Chrome, Windows, Card
T2: Firefox, Windows, Card
T3: Safari, Windows, Card
T4: Chrome, macOS, Card
T5: Chrome, Linux, Card
T6: Chrome, Windows, PayPal
For comparison:
- Full combinations: 3 x 3 x 2 = 18 tests
- Pairwise: at least 3 x 3 = 9 tests
- Each Choice: minimum = largest number of values = 3 tests
Suppose only T1, T2, T4 and T6 are executed. Base Choice Coverage is then 4/6 = 67%.
Relationship to Other Combinatorial Techniques
- Each Choice Coverage requires every value of every parameter to appear in at least one test. The minimum number of tests equals the maximum ni. Base Choice Coverage subsumes Each Choice Coverage, because every value appears in at least one base choice test.
- Pairwise Coverage requires every pair of values from any two parameters to be covered. Pairwise and Base Choice do not subsume each other:
- Base choice misses pairs of two non-base values, such as Firefox + macOS.
- Pairwise does not guarantee the specific base-centred combinations.
- Full (N-wise) Combination Coverage subsumes all of the above but is usually impractical.
Strengths and Limitations
Strengths:
- Small, predictable test set
- Straightforward fault isolation
- Realistic tests
- Easy manual derivation without tools
Limitations:
- Does not detect faults triggered only by interactions between two or more non-base values.
- Effectiveness depends heavily on a sensible choice of base values.
- The base test is repeated as the background for all variations, so a fault in a base value can mask other results.
Exam Tips: Answering Questions on Base Choice Coverage
1. Memorise the formula: tests = 1 + sum of (ni - 1). This is the most common calculation question. Count the base test once only, and subtract one value per parameter. A frequent trap is answering with the sum of all values, or forgetting the +1.
2. Spot the "one change at a time" rule. If a candidate test differs from the base test in two parameters, it is not a valid base choice test. Questions often ask which test is missing or which test does not belong.
3. Identify the base test first. When given a set of tests, find the combination of all base values. Then check that each non-base value appears exactly once, with everything else at base.
4. Calculate coverage percentages carefully. Divide the number of distinct base choice combinations exercised by the total required. Duplicate tests do not add coverage. Tests that change two parameters add nothing to base choice coverage.
5. Know the subsumption hierarchy: Full combination > Pairwise; Base Choice > Each Choice. Pairwise and Base Choice are not comparable. Watch for distractors claiming pairwise subsumes base choice.
6. Know when to recommend it. Base choice is the best answer when the scenario stresses:
- a clear normal or default configuration
- the need to isolate which parameter value causes a failure
- limited time combined with realistic tests
If the scenario stresses interactions between pairs of parameters, choose pairwise instead.
7. Know how base values are selected. Expect wording such as "most common", "most important" or "default". An answer suggesting random selection is usually wrong.
8. Handle constraints. If a variation is infeasible, it is excluded and does not count against coverage. Read the scenario for such restrictions.
9. Compare test counts quickly. For K-level application questions, compute each choice (max ni), base choice (1 + sum of (ni - 1)) and full combinations (product of ni). This lets you eliminate wrong options fast.
10. Read the parameter values carefully. Values may have been produced by equivalence partitioning. Count partitions, not raw input ranges.
Summary
Base Choice Coverage starts from a realistic base test and varies one parameter at a time through all its other values. It needs 1 + sum of (ni - 1) tests. It subsumes Each Choice Coverage, is not comparable with Pairwise Coverage, and gives excellent fault isolation. For the exam, master the formula, the one-change rule, the subsumption relationships and the coverage calculation.