Professional Documents
Culture Documents
Interoperability Testing PDF
Interoperability Testing PDF
Integration – Is a technique when the components of the same system interact with
each other. So in testing world, when we do Integration testing, we are actually
testing the behavior of 2 or more, lowest levels of components of the same system.
Example:
Like – MS Word and Calculator are 2 different application and they perform their expected
behavior independently in the same operating system. So we say that these 2 applications
are compatible with each other.
Consider you need to travel from New Delhi to New York. Now you don’t have a
direct flight. You have to travel from New Delhi to London and then take
connecting flight from London to New York.
Now because you have some time constraints, you reserve your flight from New
Delhi to London in “Jet Airways” and from London to New York in “Virgin Atlantic”.
So that means all your passenger details got traversed from Jet Airways to Virgin
Atlantic.
So here, Jet Airways and Virgin Atlantic, both are independent application all
together and while reserving your flight, your details of booking got exchanged
from Jet Airways to Virgin Atlantic in a meaningfull manner, without prior intimation.
We would need to do Interoperability testing to ensure that:
1. PLAN: We can use standard test plan document, however, there is a need to know
and understand all the applications, their functionalities, behaviour, input it takes, and
output it reveals. Also, do not think of one application or two applications, rather think
of all the applications as a single unit. You need to have a bird’s eye view.
2. DO: This is the span of time where execution on functional and non-functional testing is
done, logging the defects, following up with development team to get those resolved,
regression and re-test of the system as a whole.
3. CHECK: This is the phase where we revisit our test results and try to map those with the
Requirement Traceability Matrix (RTM) and validate whether all the expected
requirements are met and whether all the applications are traversed. We check that
the data is traversed and exchanged correctly and smoothly between the
applications/systems. We would also need to validate that the data which is traversed
does not gets modified.
HOW TO DO INTEROPERABILITY TESTING (Contd.)
6. For each application, identify the Input it takes and the output it returns.
7. Identify those data which would be traversing through all/most of the applications.
8. Identify the expected behavior for each combination of application and date that
needs to validated
9. Document it.
A. Application 1, Application 2, Application 3
and Application 4 are four different systems
B. Each of these systems has the definite set of
functionality which needs to be identified.
C. Input and outputs of each system need to be
identified.
D. In case of application1, it renders 2 outputs. 1 output
forms the input of application 3 and 1 output forms input
of application 2. The output from application 2 forms the
input to application 3 and application 4 and so on.
E. The validity for each of the input and output is
checked. The major point to consider here is that the
data which is traversing in the form of input and output
does not gets modified AND all the application is
covered.
Example #2:
Considering An Hospital Management System having
various departments and sub-departments with the
following test scenarios:
• Difficult to test all the application with all the permutations and combinations (Exhaustive
testing)
• Because of the different software’s and environments, determining the testing strategy
and executing it is itself a big task.
• In case of any defect, doing the Root Cause Analysis is a big challenge.
• Because the applications are in a network, there would be times when the network is
down. Because of this, testing also gets affected.
How can I mitigate these challenges?
2) Try to identify some historical data like – under which circumstances the systems were down, how much time
does it takes to be back in action.
3) PLAN – Use historical data, past experiences, skill of the team, environmental factors to identify the strategy of
the testing. The better your plan, the better would be your execution.
4) Start working on preparing the environment much before than your actual execution starts. Needless to say-
plan your steps when you are preparing the environment. Make sure that your environment is all set, ready and up
& running when your execution starts.
5) Before starting with the IOT, ensure that the individual applications are fully functionally tested with no defects.
Then in case of any defect, you would only need to look for the environmental factors that have resulted into some
error.
Interoperability Test on Mobiles:
The intention, strategy, risks, and execution would be same but the tools and
techniques would be different in case of mobiles.
Conclusion:
It may happen that you may not attain 100% coverage, but we should
be smart enough to select our test cases in such a way that most of the
applications are covered in a single flow by using good test case writing
techniques.