Chapter 20 : Decision Table Test Design Technique

Decision Table is also known as Cause-Effect Table. This test technique is appropriate for functionalities which has logical relationships between inputs (if-else logic). In Decision table technique, we deal with combinations of inputs. To identify the test cases with decision table, we consider conditions and actions. We take conditions as inputs and actions as outputs.

Examples on Decision Table Test Case Design Technique:

Take an example of eCommerce website in which we delivered free shipping membership to the customer applied which had site membership , international address .Here the conditions for free shipping  are USER HAS SITE MEMBERSHIP, ORDER $25 OR OVER ,INTERNATIONAL ADDRESS .And the Result got as free shipping applied or not.

ConditionRule1Rule 2Rule 3Rule 4Rule 5Rule 6Rule 7Rule 8
User has Site MembershipTTTTFFFF
Order $25 or over TTFFTTFF
International AddressTFTFTFTF
   Result     
 YesYesYesYesNoYesNoNo

First column represents conditions to be verified and all other column represents test-cases. Each test-case defined as rules.and result is displayed at the bottom different scenarios are considered here when we give all correct credentials we get the result as passed.

Why is Decision Table Testing is important?

This testing technique becomes important when it is required to test different combination. It also helps in better test coverage for complex business logic.

 In a system where for each set of input values the system behavior is different, boundary value and equivalent partitioning technique are not effective in ensuring good test coverage. In this case, decision table testing is a good option. This technique can make sure of good coverage, and the representation is simple so that it is easy to interpret and use.

This table can be used as the reference for the requirement and for the functionality development since it is easy to understand and cover all the combinations.

Advantages of Decision Table Testing

  • When the system behavior is different for different input and not same for a range of inputs, both equivalent partitioning, and boundary value analysis won’t help, but decision table can be used.
  • The representation is simple so that it can be easily interpreted and is used for development and business as well.
  • This table will help to make effective combinations and can ensure a better coverage for testing
  • Any complex business conditions can be easily turned into decision tables
  • In a case we are going for 100% coverage typically when the input combinations are low, this technique can ensure the coverage.

Disadvantages of Decision Table Testing

The main disadvantage of this technique is that when the number of input increases the table will become more complex