72 lines
3.6 KiB
Markdown
72 lines
3.6 KiB
Markdown
# Decision Table
|
|
|
|
| number_of_items | total_cost | delivery_time | cost |
|
|
|----------------|-----------|--------------|------------------------|
|
|
| <= 3 | <= 100 | NEXT_DAY | 25 |
|
|
| <=3 | <= 100 | SECOND_DAY | 10 |
|
|
| <= 3 | <= 100 | THIS_WEEK | number_of_items * 1.50 |
|
|
| <= 3 | > 100 | NEXT_DAY | 35.00 |
|
|
| <= 3 | > 100 | SECOND_DAY | 15.00 |
|
|
| <= 3 | > 100 | THIS_WEEK | 10.00 |
|
|
| > 3 | <= 100 | NEXT_DAY | number_of_items * 6.00 |
|
|
| > 3 | <= 100 | SECOND_DAY | number_of_items * 2.50 |
|
|
| > 3 | <= 100 | THIS_WEEK | 0.00 |
|
|
| > 3 | > 100 | NEXT_DAY | number_of_items * 7.50 |
|
|
| > 3 | > 100 | SECOND_DAY | number_of_items * 3.50 |
|
|
| > 3 | > 100 | THIS_WEEK | number_of_items * 2.50 |
|
|
|
|
time take to generate this : 14.20 min (including song selection 😜 )
|
|
|
|
|
|
# Equivalance testing:
|
|
|
|
## Input parameters:
|
|
* number of item
|
|
* Positive integers are the valid values.
|
|
* total cost
|
|
* Positive numbers are the valid values.
|
|
* delivery time
|
|
* NEXT_DAY , SECOND_DAY and THIS_WEEK are the valid values.
|
|
|
|
|
|
## Equivalance partitions
|
|
|
|
| Input | Partition Type | Partition Condition | Selected Value |
|
|
|-----------------|----------------|---------------------------------|----------------|
|
|
| number_of_items | Valid | <= 3 | 3 |
|
|
| | Valid | > 3 | 4 |
|
|
| | Invalid | <= 0 | -1 |
|
|
| total_cost | Valid | <= 100 | 100 |
|
|
| | Valid | > 100 | 101 |
|
|
| | Invalid | < 0 | -2 |
|
|
| delivery_time | Valid | NEXT_DAY, SECOND_DAY, THIS_WEEK | SECOND_DAY |
|
|
| | Invalid | Null or unsupported value | null |
|
|
|
|
## Test cases
|
|
|
|
| number_of_items | total_cost | delivery_time | Partition Type | Expected Outcome |
|
|
|-----------------|------------|---------------|------------------|---------------------------------|
|
|
| 3 | 100 | NEXT_DAY | All Valid | 25.00 |
|
|
| 3 | 150 | SECOND_DAY | All Valid | 15.00 |
|
|
| 4 | 100 | THIS_WEEK | All Valid | 0.00 |
|
|
| 4 | 150 | NEXT_DAY | All Valid | 30.00 |
|
|
| -1 | 100 | NEXT_DAY | Invalid Items | Exception |
|
|
| 3 | -50 | SECOND_DAY | Invalid Cost | Exception |
|
|
| 3 | 100 | null | Invalid Delivery | Exception |
|
|
|
|
# Boundary Value
|
|
|
|
| Input | Boundaries |
|
|
|-----------------|------------|
|
|
| number_of_items | -1 |
|
|
| | 0 |
|
|
| | 1 |
|
|
| | 3 |
|
|
| | 4 |
|
|
| total_cost | -1 |
|
|
| | 0 |
|
|
| | 1 |
|
|
| | 100 |
|
|
| | 101 |
|
|
| delivery_time | n/a |
|