Control Structure Testing
• The basis path testing technique is one of a number of techniques for control structure . • Control structure testing is a group of
white-box testing methods.
Branch Testing
Branch Testing or Decision Testing
• "For every decision, each branch needs to be
executed at least once."
• This example has two branches to be executed:
1. IF ( a equals b) THEN 2. statement 1
3. ELSE
• This examples also has just two branches to be executed, despite the compound conditional:
• IF ( a equals b AND c less than d ) THEN • statement 1
• ELSE
Condition Testing
• Condition testing is a test construction
method that focuses on exercising the logical conditions in a program module.
Data flow Testing
• Data flow testing is a technique used to detect improper use of data in a program.
• By looking data usage, risky areas of code can be found and more test cases can be applied.
• To test data flow we advise control flow graph.
Loop Testing
• Loop testing is used to check the validity of loops present in the program modules.
• Generally, there exist four types of loops, namely,
Simple loop Nested loops
Simple loop:
• Refers to a loop that
has no other loops in it. • Consider a simple loop
of size n.
• Size n of the loop
indicates that the loop can be traversed n
times, that is, n number of passes are made
Nested loops
• Loops within loops are known as nested loops. • The numbers of tests
required for testing
Concatenated loops
• The loops containing several loops that may be dependent or
1. In case the loops are dependent on each
other, the steps in nested loops are followed.
2. On the other hand, if the loops are
independent of each other, the steps in
Unstructured loops
• Such loops are difficult to
test;
• therefore, they should be
redesigned so that the use of structured
Black-box testing
• It is carried out to test functionality of the
program. It is also called ‘Behavioral’ testing.
• The tester in this case, has a set of input
values and respective desired results. On providing input, if the output matches with
• In this testing method, the design and
structure of the code are not known to the tester, and
• testing engineers and end users conduct this test on the software
• The main purpose of the Black Box is to check whether the software is working as per
expected in requirement document &
Types of Black-Box Testing
• Following black box testing techniques are used for testing the software application.
• Graph based testing methods • Error Guessing
Graph Based Testing Methods:
• Each and every application is build up of some
objects.
• All such objects are identified and graph is
prepared.
• From this object graph each object relationship is
Error Guessing
• This is purely based on previous experience and
judgment of tester.
• Error Guessing is the art of guessing where
errors can be hidden.
• For this technique there are no specific tools,
Boundary Value Analysis (BVA):
• Boundary Value Analysis is the most commonly
used test case design method for black box testing.
• As all we know the most of errors occurs at
boundary of the input values.
• This is one of the techniques used to find the error
• Let us take an example to explain this:
Suppose we have software application which accepts the input value text box ranging from 1 to 1000, in this case we have invalid and
• Here are the Test cases for input box
Equivalence Class Partitioning
• The equivalence class partition is the black box test case
design technique used for writing test cases.
• This approach is use to reduce huge set of possible inputs to
small but equally effective inputs.
• This is done by dividing inputs into the classes and gets one
value from each class.
• Such method is used when exhaustive testing is most wanted
In the equivalence partitioning input are
divided based on the input values:
• If an input condition specifies a range, One valid and
two invalid equivalence classes are defined.
• If an input condition requires a specific value, One
valid and two invalid equivalence classes are defined.
• If an input condition specifies a member of a set,
One valid and one invalid equivalence class are defined.
• If an input condition is Boolean, One valid and one
Integration testing
• Once all the individual units are created and
tested, we start combining those “Unit Tested” modules and start doing the integrated testing.
• So the meaning of Integration testing is quite
straight forward- Integrate/combine the unit tested module one by one and test the
The integration testing techniques:
1. Big Bang integration testing
• As per the below image all the modules from ‘Module 1’ to ‘Module 6’ are integrated