Decision Table Testing
A Decision Table Testing is a good way to deal with different combination of inputs which produce different results. It is also called Cause-Effect Table. It provides a systematic way of stating complex business rules, which is useful for developers as well as for testers. Decision tables can be used in test design as they help testers to explore the effects of combinations of different inputs.
Decision tables are precise and compact way to model complicated logic. It helps the developers to do a better job and can also lead to better relationships with them. It may be not be possible to test all combinations as the number of combinations can be huge. It is better to deal with large numbers of conditions by dividing them into subsets and dealing with the subsets one at a time. The developer has to be satisfied with the choice of testing just a small subset of important combinations. It helps reduce test effort in verifying each and every combinations of test data and ensures complete coverage
A decision table is basically an outstanding technique used in both testing and requirements management. It is a structured exercise to prepare requirements when dealing with complex business rules. Also, used in model complicated logic Decision tables are precise and compact way to model complicated logic. They are ideal for describing situations in which a number of combinations of actions are taken under varying sets of conditions.
Advantages of Decision table Testing
- Any complex business flow can be easily converted into the test scenarios & test cases using this technique.
- Such type of table work iteratively, means the table created at the first iteration is used as input table for next tables.
- It provide complete coverage of test cases which help to reduce the rework on writing test scenarios & test cases.
- These tables guarantee that we consider every possible combination of condition values. This is known as its “completeness property”.
What are the Advantages of Decision Tables?:
- This type of testing also works iteratively. The table that is drawn in the first iteration, acts as a stepping stone to derive new decision table(s), if the initial table is unsatisfactory.
- These tables guarantee that we consider every possible combination of condition values. This is known as its “completeness property”. This property promises a form of complete testing as compared to other techniques.
- Decision tables are declarative. There is no particular order for conditions and actions to occur.
What are the Disadvantages of Decision Tables?:
- Decision tables do not scale up well. We need to “factor” large tables into smaller ones to remove redundancy.