CH05.L04. BBT-3-decision table.

MaharaTech - ITI MOOCA
6 Feb 201903:08

Summary

TLDRThe video script introduces the Decision Table technique for software testing, particularly useful when multiple conditions influence the output. It uses the example of health insurance eligibility based on age, smoking habits, exercise frequency, and heart attack history to illustrate how to create a comprehensive table of possible inputs and expected outcomes. The technique helps identify test cases tied to specific business rules, ensuring thorough testing by systematically covering all combinations of conditions.

Takeaways

  • 📊 The Decision Table technique is used for testing scenarios with multiple conditions affecting the output, such as in software development.
  • 🔍 It involves creating a table that lists all possible inputs and expected outputs based on the given rules and conditions.
  • 📝 The first step is to identify and list the potential outputs that a user might receive, such as different insurance discounts or a refusal of insurance.
  • 🎯 The next step is to define the conditions or rules that lead to each output, such as age, smoking status, exercise frequency, and medical history.
  • 🚫 The 'no' output scenario represents a case where the user is declined insurance, with all conditions set to false.
  • ✅ The 'yes' output scenario indicates that the user meets the criteria for a particular offer or discount.
  • 🔄 The process involves translating business rules into the table format, where each column represents a rule and each row represents a combination of inputs and their results.
  • 🔍 The table helps identify which test cases are affected by which business rules, ensuring comprehensive testing coverage.
  • 🔄 After creating the initial table, it's important to eliminate duplicate cases to streamline the testing process.
  • 📚 At the ISTQB foundation level, learners will be taught how to filter and remove redundant business rules to optimize the decision table.
  • 📝 The Decision Table technique is particularly useful when there are many conditions that control what output is presented to the user.

Q & A

  • What are the two techniques mentioned in the transcript that deal with a range of numbers or sets of values?

    -The two techniques mentioned are Equivalence Partitioning (EP) and Boundary Value Analysis (BVA).

  • In the context of software development, what is an example scenario provided for testing?

    -The example scenario is a website that presents health insurance offers based on certain rules and conditions such as age, smoking status, exercise frequency, and history of heart attacks.

  • What is the purpose of using the Decision Table technique in testing?

    -The Decision Table technique is used to test the combinations between all inputs and outputs in scenarios where there are too many conditions controlling the output that will appear to users.

  • What are the three possible outcomes for the insurance offers mentioned in the transcript?

    -The three possible outcomes are: getting insurance with a 30% discount, getting insurance with a 10% discount, and being declined for insurance.

  • How does the Decision Table technique help in identifying test cases?

    -The Decision Table technique helps by collecting all probable inputs and expected outputs, allowing testers to identify which test cases depend on which business rules after eliminating duplicate cases.

  • What are the four conditions mentioned for the first business rule regarding the 30% insurance discount?

    -The conditions are: being less than 55 years old, being a non-smoker, exercising more than three times a week, and not having had a heart attack before.

  • How does the age condition change the insurance offer in the example provided?

    -If a user is more than 55 years old, instead of the 30% discount, they will only get a 10% discount on the insurance.

  • What combination of conditions would result in the denial of health insurance according to the transcript?

    -The denial of health insurance would occur if the user had previously suffered a heart attack, is a smoker, is more than 55 years old, and does not exercise three times a week.

  • What is the significance of the 'yes' and 'no' entries in the Decision Table?

    -The 'yes' and 'no' entries in the Decision Table represent the presence or absence of certain conditions that lead to specific outcomes, such as different insurance offers or denial of insurance.

  • How does the transcript suggest dealing with repeated business rules in the Decision Table technique?

    -The transcript mentions that in the ISTQB foundation level, one will learn how to make filtration and delete repeated business rules to streamline the Decision Table.

Outlines

00:00

📊 Decision Table Technique Overview

This paragraph introduces the Decision Table technique used in software testing for scenarios with multiple conditional rules affecting output. It explains the process of creating a decision table to test combinations of inputs and expected outputs, like a health insurance website with various eligibility criteria. The paragraph details the steps to identify outputs such as discounts or denial of insurance based on age, smoking status, exercise frequency, and medical history. It also discusses how to fill out the table with business rules and input combinations, and how to refine the table by removing duplicates to create effective test cases.

Mindmap

Keywords

💡EP & BVA Techniques

EP & BVA Techniques refer to Equivalence Partitioning and Boundary Value Analysis, which are testing strategies used to determine the representative values for inputs in a software testing process. These techniques help in identifying a range of numbers or sets of values that can be tested directly, ensuring that the software behaves as expected under different conditions. In the script, these techniques are contrasted with the Decision Table technique, highlighting their different approaches to testing.

💡Software Development

Software Development is the process of creating software through various stages like design, coding, testing, and maintenance. It involves writing and managing source code, fixing bugs, and adding features to meet user requirements. The script mentions software development in the context of testing, emphasizing the complexity that arises when software behavior depends on multiple rules and conditions.

💡Decision Table Technique

The Decision Table Technique is a testing method used to systematically determine the combinations of conditions and actions in a system. It involves creating a table that lists all possible inputs and expected outputs, helping testers understand how different conditions affect the system's behavior. In the script, this technique is introduced as a solution for testing scenarios with numerous conditions that influence the output.

💡Insurance

In the context of the script, 'Insurance' refers to a service that provides financial protection against potential risks. The script uses the example of health insurance, where the eligibility and discounts are determined by various factors such as age, smoking habits, exercise frequency, and medical history. This example illustrates how complex decision-making processes can be tested using the Decision Table Technique.

💡Conditions

Conditions in the script refer to the specific requirements or rules that must be met for certain actions to occur. For instance, age, smoking status, exercise frequency, and medical history are conditions that determine the eligibility for health insurance discounts. These conditions are crucial in the Decision Table Technique as they define the rows and columns of the table used for testing.

💡Outputs

Outputs in the script are the results or outcomes that users may receive based on the conditions met. For example, getting health insurance with a 30% discount, a 10% discount, or being declined insurance are different outputs. The Decision Table Technique helps in mapping these outputs to the corresponding conditions and inputs.

💡Business Rules

Business Rules in the script are the specific criteria or guidelines that dictate how the system should behave under certain conditions. They are used to define the logic that determines the outputs in the Decision Table Technique. For instance, the business rule might state that a user gets a 30% discount if they are under 55, non-smoker, and exercise more than three times a week.

💡Inputs

Inputs in the script refer to the data or information provided by the user that influences the system's output. In the context of health insurance, inputs might include age, smoking status, exercise frequency, and medical history. These inputs are crucial in the Decision Table Technique as they form the basis for determining the conditions and expected outputs.

💡Test Cases

Test Cases are detailed descriptions of the steps required to test a particular feature or function of a system. In the script, test cases are derived from the Decision Table Technique, which helps in identifying the necessary inputs and expected outputs for each scenario. The goal is to ensure that the system behaves as expected under various conditions.

💡ISTQB Foundation Level

ISTQB Foundation Level refers to the entry-level certification in software testing offered by the International Software Testing Qualifications Board (ISTQB). The script mentions this level in the context of learning how to filter and eliminate redundant business rules in the Decision Table Technique, which is a skill typically covered in such foundational courses.

Highlights

Introduction of the Decision Table technique for testing scenarios with multiple conditions and rules.

Explanation of the difference between direct input testing like EP & BVA and the complex conditions in software development.

Use of Decision Table technique to manage and test combinations of inputs and outputs in software.

Example of health insurance website with rules determining insurance offers or refusals.

Description of the conditions for a 30% insurance discount.

Conditions for a 10% insurance discount as an alternative scenario.

Scenario where insurance is declined due to specific conditions.

Process of adding expected outputs to the Decision Table according to requirements.

Inclusion of probable answers (true or false) for each input in the Decision Table.

Business rule example for granting a 30% discount based on age, smoking status, exercise frequency, and heart attack history.

Adjustment of discount percentage based on age exceeding 55 years in certain conditions.

Combination of conditions leading to the refusal of health insurance.

Step-by-step process of filling the Decision Table with business rules.

Identification of test cases based on business rules from the Decision Table.

Importance of removing duplicate cases to streamline testing.

Reference to ISTQB foundation level for further learning on filtration and removal of duplicate business rules.

Conclusion of the Decision Table technique's application in complex condition-based testing scenarios.

Transcripts

play00:04

In EP & BVA techniques,

play00:06

We deal with a range of numbers

play00:08

or sets of values.

play00:10

so, I have a direct input

play00:12

and we know what I'm testing exactly.

play00:14

but if we have a scenario of

play00:16

a software development

play00:18

which depends on certain rules and conditions

play00:20

and according to them there will be certain actions, like

play00:22

for example: a website presents the health

play00:24

insurance according to some rules.

play00:26

First: Age should be

play00:28

more than 55 years old.

play00:30

Second: A Smoker

play00:32

Third: Exercise

play00:34

three time per week.

play00:36

Forth: Had previously suffered from a heart attack

play00:38

or not. In such example,

play00:40

There are too many conditions

play00:42

controlling the output that will appear to users,

play00:44

this is to take an insurance

play00:46

with 10% discount

play00:48

or 30%

play00:50

or to refuse the insurance.

play00:52

Now we want to test the combinations

play00:54

between all these inputs and outputs

play00:56

and to write the effective

play00:58

test case. so we will use

play01:00

the Decision table technique.

play01:02

From its name, we can figure out that we will

play01:04

start with a table, in which we will

play01:06

collect all the probable inputs of the users,

play01:08

In addition to all the expected outputs

play01:10

that s/he may get. Start with

play01:12

adding the cases of outputs that may appear

play01:14

to the user and this is

play01:16

according to the requirements.

play01:18

The first output: to get the insurance with

play01:20

a discount of 30%: so it will be (yes) for

play01:22

"Insurance" & "30% offer"

play01:24

and (no) for 10% offer

play01:26

Second output may appear is that:

play01:28

to get the insurance with a 10 % discount

play01:30

this will be the same as the previous case

play01:32

except that it will be (yes) for

play01:34

the 10% offer and (No) for the

play01:36

30% offer. The third output

play01:38

is to get declined to the insurance, then

play01:40

all the cells will be (No). Then we get back

play01:42

to the requirements and

play01:44

write in front of each input the 2 probable

play01:46

answers either (true)

play01:48

or (false).

play01:50

the first business rule, for example, is

play01:52

to give the user insurance with 30%

play01:54

if he is less than 55 years old

play01:56

and non-smoker

play01:58

and exercise for more than 3 times a week.

play02:00

also he didn't get a heart attack

play02:02

before. In the case of all

play02:04

the previous conditions are true

play02:06

except that his age is more than

play02:08

55 years old, then he'll get

play02:10

10% discount only.

play02:12

In case he had a heart attach before,

play02:14

smoker, his age is more than

play02:16

55 years old and he doesn't

play02:18

exercise for 3 times a week,

play02:20

then he will not get the health insurance.

play02:22

and so on, step by step we empty all

play02:24

the business rules mentioned in the requirements

play02:26

into the table. Each column

play02:28

of this table is for a business rule, and

play02:30

what represent the combinations

play02:32

is the cases that user will input

play02:34

and their results.

play02:36

So, by having the full table,

play02:38

We'll be able to identify which test cases

play02:42

will depend on which business rule

play02:44

Of course, this will be after deleting the repeated cases

play02:46

in ISTQB foundation level,

play02:48

we will learn how to

play02:50

make filtration and to delete

play02:52

the repeated business rules

play02:54

now we've finished the third technique:

play02:56

the Decision Table, which

play02:58

we need to apply if there are too

play03:00

many conditions control the output

play03:02

that will appear for the user.

Rate This

5.0 / 5 (0 votes)

الوسوم ذات الصلة
Decision TableSoftware TestingInsurance RulesTest CasesBusiness LogicInput ConditionsOutput ResultsHealth InsuranceRisk AssessmentISTQBTesting Techniques
هل تحتاج إلى تلخيص باللغة الإنجليزية؟